Rabu, 07 Mei 2014

Array dalam Algoritma

Materi pertama kali yang dipelajari di kuliah pertama algoritma setelah UTS adalah mengenai Array.
Array memiliki 5 karakteristik, antara lain :
1. Fixed
2. Menggunakan memori yang besar. Contohnya dalam kehidupan adalah ketika dimana kita memesan 6 buah barang tetapi yang dipakai hanya 3 buah, walaupun yang kita pakai hanya 3 buah tetapi tetap saja dihitung 6 buah.
3. Static
4. Homogen : sejenis
5. Sequency : berurutan

Array memiliki kelebihan yaitu randaom access yaitu gampang diakses.


Cara membuat Array atau cara membedakan Array atau bukan tidaklah susah. Perbedaan Array dengan yang lainnya hanyalah dari bentuk kotak ( [] ).
Contoh : int [] , string [] , [] char, [] double.
Lambang [] bisa berada di depan maupun di belakang ( tidak ada perbedaan).

Contoh Array : double [] mylist =  new double [10]
1. mylist adalah nama index
2. double [10] aritnya memiliki 10 element dan 9 index. Untuk mencari index digunakan rumus n-1

Array Automatic Initialization
Contoh :
1. double [] number = {1.1 , 1.3 , 3.1, 3.3};
2. char [] university = {'B' , 'I' , 'N' , 'U' , 'S'};
3. string [] name = {"Ferdi" , "Adi" , "Handy"};
Perbedaan yang perlu diingat adalah untuk angka tidak menggunakan tanda, untuk character menggunakan tanda petik( ' ), dan untuk kata menggunakan tanda petik dua( " ).

Dalam Array ada digunakan dimensi dan penggunannya hanyalah dengan jumlah kotak ( [] ) yang ada. Jika Array 1 dimensi maka char[], tetapi jika Array 2 dimensi maka char [] [].

Single Array

Keterangan :
1. for(int i=0;i<numStd;i++), berarti inisialisasi i dimulai dari 0, 1<numStd berarti kondisi dimana looping akan berhenti, i++ berarti akan terus bertambah hingga kondisi looping berhenti. Jika tidak ada i++ maka akan terjadi looping forever.
2. gpa[i] = 3+((double)i/10), double merupakan type casting dimana dari contoh di atas menggunakan double karena akan diigunakan angka desimal.
3. %-10s, berfungsi dalam penulisan yang lurus dan rapi. Karena dari contoh setiap nama memiliki panjang yang berbeda.
4. %1.2f\n, berarti menggunakan 2 angka dibelakang koma atau 2 angka desimal.

Dalam penggunaan looping seringkali ada for(i=0;i<19;i++), itu berarti looping terjadi 19 kali. Cara gampang perhitungannya adalah 19-0=19. Tetapi jika digunakan lambang <= maka looping akan terjadi 20 kali dengan perhitungan 19-0+1 = 20.

Array Duplication (Correct Way)
1. Looping, untuk mendapatkan data yang sama dengan menggunakan looping. Pengerjaanya menggunakan sourceArray dan targetArray.

2. Arraycopy, memiliki keuntungan hemat tempat karena hanya menghabiskan 1 baris saja.
3. Clone

Two Dimensional Array
Jika int [3] [5] maka cara perhitungan Array adalah dengan mengalikan 3 dengan 5 dan hasilnya berjumlah 15. Dengan maksud memilii 3 baris(kesamping) dan 5 kolom (kebawah).

Passing Array
Dalam penggunaanya dimaksudkan idx1 akan dipindahkan ke value, idx2 akan dipindahkan ke idx1 dan kemudian value akan dipindahkan ke idx2.
Namun Ko Sky memberikan cara yang lebih mudah dimengerti, yaitu bagaimana cara memindahkan isi dari gelas pertama ke gelas kedua dan sebaliknya. Dalam pengajarannya diberikan contoh gelas A berisi es batu dan gelas B berisi air putih. Dimaksudkan untuk menukar isi dari setiap gelas dan bagaimana caranya ?
Untuk menukar isi dari kedua gelas diperlukan gelas C.

Keterangan :
1. Es batu dari gelas A dipindahkan ke gelas C yang kosong.
2. Air putih dari gelas B kemudian dipindahkan ke gelas A yang sudah kosong.
3. Es batu yang sekarang berada di gelas C kemudian dipindahkan ke gelas B.

ArrayList Class
1. Add(element) : penambahan di belakang.
2. Clear() : menghapus semua element
3. Clone() : meng-copy
4. Contains(element) : mencari / search element
5. Get(index) : mencari isi dari index ke berapa
6. isEmpty : cek kosong atau tidak
7. Remove(index) : menghapus index tertentu
8. Size() : jumlah element
9. Set(index,element) : mengisi index dari elemet ke sekian.

Nama : Yuki Tjan
NIM : 1701308561
Class : 02PAA
Dosen pengajar : Henry Chong
Sumber materi : Binus University



Tidak ada komentar:

Posting Komentar