BINARY Search.........
package Searching;
/**
*
* @author Lintang
*/
public class Binary {
public static void main(String[] args) {//main method
int N = 6;//jumlah index array
int A[] = {7,9,14,78,90,67};// nilai iindex array
int Cari,BatasAtas, BatasBawah;//tipe data dari variabel tersebut
boolean Ketemu;//tipe data
Cari= 78;//angka yg ingin dicari
BatasAtas = 0;//batas atas
BatasBawah = N - 1;//algoritma Batas bawah
Ketemu = false;//kondisi
int Tengah =0;//nilai batas tengah
while ((BatasAtas <= BatasBawah) && (!Ketemu)){
//ketika Batas <= BatasBawah dan tidak ketemu
Tengah = (BatasAtas + BatasBawah) / 2;
//menjelaskan bahwa Tengah =BatasAtas + BatasBawah) / 2
if (A[Tengah] == Cari) {// jika indexs arra ==Cari
Ketemu = true;//kondisi jika ketemu adala true
} else if (A[Tengah] < Cari) {
//jika index array <Cari
BatasAtas = Tengah + 1;
//algoritmanya batasAtas + 1
} else {
BatasBawah = Tengah - 1;//batasbawah = tengah-1
}
}
if (Ketemu) {//jika ketemu
System.out.println("Data berada di index nomor"+ Tengah);
//mencetak"Data berada di index nomor"+ Tengah
} else {//dan jika tidak
System.out.println("Data tidak ditemukan");
//menctak Data tidak ditemukan
}
}}
Output:
SEQUENTIAL Search......
package Searching;
/**
*
* @author Lintang
*/
public class Sequential {
public static void main(String[] args) {//main method
int A[] = {1, 4, 7, 9, 15, 89};//nilai index Array
int Z = 56;//nilai yg akan dicari
boolean Ketemu = false;//tipe data Ketemu
//menyatakan kondisi
for (int i = 0; i < A.length; i++) {//Perulangan
if (Z == A[i]) {//jika Z = INDEKS ARRAY
Ketemu = true;//kondisi jika ketemu = true
break;//untuk berhenti
}
}
if (Ketemu) {//jika ketemu
System.out.println("ADA");//mencetak ada
} else {
System.out.println("Tidak ada");//mencetak tidak ada
}
}
}
Output:
LINTANG NOVITASARI
1200631017
KELAS A


0 comments:
Post a Comment