1 / 17

ARRAY DAN SEARCHING ALGORITHM

ARRAY DAN SEARCHING ALGORITHM. Malang, 21 Desember 2012 bethanurinasari@ gmail .com.

chin
Télécharger la présentation

ARRAY DAN SEARCHING ALGORITHM

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. ARRAY DAN SEARCHING ALGORITHM Malang,21 Desember2012 bethanurinasari@gmail.com

  2. ArrayArray dalam bahasa Indonesia adalah indeks, maka variabel array adalah variabel yang mempunyai indeks. Array sangat penting di dalam pemrograman, karena array mampu menampung banyak data yang bertipe sama.

  3. Array Satu Dimensi • Nilai data Array harus homogen (tipe data sama). • Bentuk umum array berdimensi satu tipe data namaVariabel [jumlah_elemen] ; • Untuk mendeklarasikan suatu variabel array : • Tipe data elemen array : Tipe data apakah yang akan disimpan dalam variabel array ini • Nama variabel : Merupakan nama dari variabel array • Jumlah elemen array : Jumlah elemen yang dibutuhkan dalam array tersebut

  4. Array Satu Dimensi Contoh • Sebagai contoh variabel array x menampung nilai-nilai bilangan bulat {3, 6, 8, 7, 5, 1} berarti indeks untuk variabel x ini adalah 1 sampai dengan 6, dan ditulis sebagai x(1), x(2), x(3), x(4), x(5) dan x(6). • Kalau ditulis dalam java : • int angka [] = new int [6]; • angka [0]=3; • angka [1]=6; • angka [2]=8; • angka [3]=7; • angka [4]=5; • angka [5]=1;

  5. Figure 1. An array with ten elements. Indices begin at 0 and end at the array length minus 1. • An array element is one of the values within an array and is accessed by its position within the array. • Array indices begin at 0 and end at the array length minus 1.

  6. Array pada dasarnya adalah sebuah variabel yang memiliki suatu nama tertentu, namun didalamnya terbagi menjadi variabel-variabel yang dibedakan berdasarkan nomor indeks. • Untuk memudahkan pemahaman mengenai konsep array, berikut adalah ilustrasinya :

  7. Source code Array 1 • public class belajar { • public static void main (String [] args){ • String jurusan[]=new String [6]; • jurusan[0]="Teknik Informatika"; • jurusan[1]="Desain Grafis"; • jurusan[2]="Manajemen Komunikasi"; • jurusan[3]="Komputer Bisnis"; • jurusan[4]="Aplikasi Perekam Medis"; • jurusan[5]="Broadcasting"; • System.out.println("jurusan yang ada di STT RRI"); • for (int i=0;i<jurusan.length;i++) { • System.out.println("jurusan ke"+(i+1)+"="+jurusan[i]); • } • } • }

  8. Source code Array 2 • public class belajar { • public static void main (String [] args){ • String jurusan []={"Teknik Informatika","Manajemen Komunikasi","Desain Grafis","Komputer Bisnis","Aplikasi Perekam Medis","Broadcasting"}; • System.out.println("jurusan yang ada di STT RRI"); • for (int i=0;i<jurusan.length;i++){ • System.out.println("jurusan ke-"+(i+1)+"="+jurusan[i]); • } • } • }

  9. SEARCHING • Searching/Pencarian merupakan kegiatan untuk menemukan atau mencari suatu data yang ditentukan di suatu tempat, apakah sesuai atau tidak. • Searching mempunyai beberapa metode, salah satunya adalah metode pencarian beruntun atau disebut juga dengan Sequential Search.

  10. Algoritma Searching Menggunakan Java • Misalkan ada data dalam bentuk array dengan nama DataArray yang mempunyai Index Array sebanyak 8 buah dimana tiap index memiliki nilai angka masing masing,  yaitu 3, 6, 19, 90, 30, 20, 10, 8 dan data yang akan kita cari saya beri nama NilaiX. • Misalnya saja NilaiX = 90 –> Apakah ada dalam DataArray dan berada pada Index Array yang keberapa ?

  11. Source code • import java.io.Scanner; • public class searching{ • public static void main(String[] args) throws Exception{ • BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); • int DataArray [] = {3, 6, 19, 90, 30, 20, 10, 8}; • int x, NilaiX; • boolean Ketemu; • //Menampilkan nilai data array • System.out.println("\nData Array :"); • for (x=0; x<DataArray.length; x++){ • System.out.print(DataArray[x]+" "); • }System.out.println("\n");

  12. //Masukan data yang ingin dicari • System.out.print("Masukan angka yang ingin dicari : "); • String Input = br.readLine(); • NilaiX = Integer.parseInt(Input); • Ketemu = false; • for (x=0; x<DataArray.length; x++){ • if (DataArray[x] == NilaiX){ • Ketemu = true; • break; • } • } • if (Ketemu == true){ • System.out.println("Angka "+NilaiX+" ditemukan pada Index Array ke-"+(x+1)+" ~ !!\n"); • }else{ • System.out.println("Angka tidak ditemukan ~ !!\n"); • } • } • }

  13. OUTPUT • Ditampilkan isi data array • Memasukkan angka 6 • Ditemukan pada index ke 2

  14. ALGORITMA PENCARIAN YANG LAIN • Terdapatmetodepencarianpada data terurut yang paling efficient, yaitumetodepencarianbagiduaataupencarianbiner(binary search). • Metodeinidigunakanuntukkebutuhanpencariandenganwaktu yang cepat. • Prinsippencariandenganmembagi data atasduabagianmengilhamimetodeini. • Data yang disimpan di dalamlarik (array) harussudahterurut. • Binary Search

  15. ALGORITMA PENCARIAN YANG LAIN Sentinel Search • Sentinel adalahtanda/batasakhirpencarian. • Sentinel dapatdiletakkan di sebelumelemenpertama (pencarianmundur), maupunditaruh di sesudahelementerakhir(pencarianmaju). • Denganmetodeini, data yang dicariselaluada. Yang menentukan data yang sebenarnyaadapadatabelatautidakadalahposisihasilpencarian.

  16. ALGORITMA PENCARIAN YANG LAIN Interpolation Search • Teknikinidilakukanpada data yang sudahterurutberdasarkankuncitertentu. Teknik searching inidilakukandenganperkiraanletak data. • Contohilustrasi: jikakitahendakmencarisuatunama di dalambukutelepon, misal yang berawalandenganhuruf T, makakitatidakakanmencarinyadariawalbuku, tapikitalangsungmembukanyapada 2/3 atau ¾ daritebalbuku. Jadikitamencari data secararelatifterhadapjumlah data. Rumusposisirelatifkuncipencariandihitungdenganrumus: • Posisi =kunci – data[low] x (hight – low) + low Data[hight] – data[low]

  17. Next >>> UAS (LIFE CODING) Andapelajari Flowchart danbeberapatipealgoritmaberikut : Sequence (runtutan – proses lurus) Selection (penyeleksian – “if-else”,dst) Repetition (Perulangan – for,whiledo,dst) Searching (Pencarian)

More Related