array&searching

Download Report

Transcript array&searching

Malang,21 Desember 2012
[email protected]
Array
Array 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.
Contoh
Array Satu Dimensi



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.


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 :















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]);
}
}
}









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]);
}
}
}
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.



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 ?












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");

//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");

}

}

}
OUTPUT



Ditampilkan isi data array
Memasukkan angka 6
Ditemukan pada index ke 2
ALGORITMA PENCARIAN YANG LAIN




Terdapat metode pencarian pada data terurut yang
paling efficient, yaitu metode pencarian bagidua
atau pencarian biner (binary search).
Metode ini digunakan untuk kebutuhan pencarian
dengan waktu yang cepat.
Prinsip pencarian dengan membagi data atas dua
bagian mengilhami metode ini.
Data yang disimpan di dalam larik (array) harus
sudah terurut.
ALGORITMA PENCARIAN YANG LAIN



Sentinel adalah tanda/batas akhir pencarian.
Sentinel dapat diletakkan di sebelum elemen
pertama (pencarian mundur), maupun ditaruh di
sesudah elemen terakhir(pencarian maju).
Dengan metode ini, data yang dicari selalu ada.
Yang menentukan data yang sebenarnya ada
pada tabel atau tidak adalah posisi hasil
pencarian.
ALGORITMA PENCARIAN YANG LAIN
Interpolation Search



Teknik ini dilakukan pada data yang sudah terurut
berdasarkan kunci tertentu. Teknik searching ini
dilakukan dengan perkiraan letak data.
Contoh ilustrasi: jika kita hendak mencari suatu nama di
dalam buku telepon, misal yang berawalan dengan
huruf T, maka kita tidak akan mencarinya dari awal
buku, tapi kita langsung membukanya pada 2/3 atau
¾ dari tebal buku. Jadi kita mencari data secara
relatif terhadap jumlah data. Rumus posisi relatif kunci
pencarian dihitung dengan rumus:
Posisi = kunci – data[low] x (hight – low) + low
Data[hight] – data[low]
Next >>> UAS (LIFE CODING)
Anda pelajari Flowchart dan beberapa tipe
algoritma berikut :
1.
Sequence (runtutan – proses lurus)
2.
Selection (penyeleksian – “if-else”,dst)
3.
Repetition (Perulangan – for,while do,dst)
4.
Searching (Pencarian)