struktur data

by - April 29, 2013


1)                  Apa pentingnya mempelajari struktur data?
-         Kita dapat lebih memahami berbagai macam jenis tipe data pada bahasa java yang digunakan dalam berbagai macam kasus,
-         Serta memahami konsep array sederhana dan menggunakan dalam menyelesaikan kasus.
1)                  Bagaimanakah mendeklarasikan variabel-variabel berikut ini dalam bahasa pemrograman java:
a)                  Variabel array dengan nama Mahasiswa dengan kapasitas 30 untuk menyimpan nama mahasiswa yang mengambil mata kuliah struktur data.
è String [] nama_Mahasiswa = new String [30];

b)                  Variabel array dengan nama Bil_Prima untuk menyimpan 10 bilangan prima.
è int [] Bil_Prima = new int [10];

c)                  Variabel array dengan nama Nilai_UTS untuk menyimpan nilai UTS 30 mahasiswa (nilai mahasiswa yang disimpan merupakan bilangan desimal) .
è double [] Nilai_UTS = new double [30];
4.                  Jika diberikan deretan bilangan sebagai berikut: 0, 10, 8, 2, 4, 1
Bagaimanakah proses pengurutan deretan bilangan di atas menggunakan algoritma bubble sort dan algoritma selection sort? Menurut anda, di antara kedua algoritma tersebut, manakah yang lebih baik? Jelaskan jawaban anda!
-         Babble Sort : merupakan cara yang mengurutkan data dengan cara membandingkan elemen sekarang dengan dengan yang berikutnya.
0        10    8    2    4    1 à 0<10 è tidak ditukar
0    10    8    2    4    1 à 0<8   è tidak ditukar
0    10    8    2    4    1 à 0<2   è tidak ditukar
0    10    8    2    4    1 à 0<1   è tidak ditukar
0    10    8    2    4    1 à 10>8 è ditukar
0     8    10   2    4    1 à  8 >2 è ditukar
0     2    10   8    4    1 à  2 <4 è tidak ditukar
0     2    10   8    4    1 à  2 >1 è ditukar
0    1    10    8    4    2 à 10>8 è ditukar
0    1     8    10   4    2 à  8 >4 è ditukar
0    1     4    10   4    2 à  4 >2 è ditukar
0    1     2    10   8    4 à 10>8 è ditukar
0    1     2     8   10   4 à  8 >4 è ditukar
0    1     2     4   10   8 à 10>8 è ditukar
            Hasil akhirnya adalah 0,1,2,4,8,10.

-         Selection Sort : Setiap proses akan dicari elemen-elemen yang belum diurutkan yang memiliki nilai terkecil atau terbesar akan dipertukarkan ke posisi yang tepat di dalam array.
 0 <10à posisi 0
 0 < 8 à posisi 0
 0 < 2 à posisi 0      tidak ada penukaran tetap pada data ke-0(0)
 0 < 4 à posisi 0
 0 < 1 à posisi 0
10> 8 à posisi 2
 8 > 2 à posisi 3
 2 < 4 à posisi 3
 2 > 1 à posisi 5       tukar data ke-1(10) dengan data ke-5(1)
 8 > 2 à posisi 3       tukar data ke-2(8) dengan data ke-3(2)
 2 < 4 à posisi 3
 2 <10à posisi 3
 8 > 4 à posisi 4       tukar data ke-3(8) dengan data ke-4(4)
 4 <10à posisi 4
 8 <10à posisi 4       tidak ada pertukaran pada data ke-4 dan data ke-5
            Hasil akhirnya adalah 0,1,2,4,8,10.
Menurut saya, setiap sort memiliki keunggulan tersendiri, namun dalam hal ini saya memilih selection sort yang baik untuk digunakan, karena secara proses pembandingan dan pengubahan hanya dilakukan pada indeks pembanding saja, pertukaran data secara fisik terjadi pada akhir proses.

2)                  Jika diberikan deklarasi sebagai berikut:
int [] abc = new int[10];
abc[0]                     = 9;
abc[1]                     = -1;
abc[2]                     = 0;
abc[3]                     = 10;
abc[4]                     = 20;
abc[5]                     = 21;
abc[6]                     = 7;
abc[7]                     = 11;
abc[8]                     = 19;
abc[9]                     = 4;
buatlah listing program untuk mencari posisi bilangan tertentu pada array tersebut dan tampilkan posisinya! Bilangan yang dicari harus diinputkan oleh user. (tidak harus menuliskan listing program keseluruhan, hanya bagian pencarian dan menampilkan posisi saja)
    public static void main(String[] args) {
        // TODO code application logic here
    Scanner Coy=new Scanner(System.in);
    int posisi = 0;
    int[] a = new int[10];
    a[0]=11;
    a[1]=10;
    a[2]=18;
    a[3]=22;
    a[4]=12;
    a[5]=14;
    a[6]=13;
    a[7]=23;
    a[8]=21;
    a[9]=12;
    System.out.print("Masukkan Angka Coy = ");
    int cari=Coy.nextInt();
    for(int i=0;i<10;i++){          
        if(a[i]==cari){
            posisi=i;
        }
    }
    System.out.println(cari+" Berada Di Posisi "+posisi);
    }
}


You May Also Like

0 comments