Sebelumnya saya ucapkan terima kasih atas respon tugas tambahan untuk nilai quiz pekan kemarin. Luar biasa, aksesnya sampai 270 hit lebih dlm sehari. Yang kedua, saya mohon maaf karena hari ini (Senin, 30/3/2009, tidak ada kuliah lagi dikarenakan ada agenda mendesak dari fakultas berupa pelatihan pembuatan proposal penelitian yang melibatkan seluruh dosen di FTI. Untuk itu, agenda kuliah hari ini saya ganti dengan tugas tracing, lagi-lagi tracing :(, supaya mahasiswa semakin sakti dalam membaca dan menganalisa sebuah program/ algoritma.
Tema kita sekarang adalah melanjutkan bahasan searching. Kali ini algoritma yang kita bahas adalah Binary Search, pencarian biner. Secara prinsip, algoritma ini akan membagi data menjadi dua bagian di setiap langkah perulangannya, sehingga pencarian akan berjalan secara relatif cukup cepat dibandingkan sequential search. Syarat untuk mode pencarian ini adalah array data harus sudah terurut. Source code lengkapnya adalah sebagai berikut:
low = 0;
high = n-1;
while (low <= high)
{
middle = (low+high)/2;
if (key == data[middle]) return(middle);
if (key < data[middle) high = middle-1;
else low = middle+1;
}
return(-1);
}
TUGAS INDIVIDU:
Lakukanlah tracing untuk array data dengan ukuran 20 berisi sembarang angka yang sudah terurut. Dua skenarionya adalah:
- pencarian yg berhasil
- pencarian yg gagal
Dikumpulkan berupa komentar di artikel ini selambat-lambatnya hari Selasa, 31/3/2009 pukul 21.00 WIB. Jangan lupa tulis nama dan NPM-nya. Terima kasih atas perhatiannya. Btw, Plagiator akan mendapat sanksi tegas. Never try it :)
SIIAAPPP...berantas plagiator Pak !!!
ReplyDeletehhehehee
jdi tgs ini memberi comment ttg tracing nya ya pak..
thx..
oke pak..
ReplyDeletepak pake lewat blog gag pak?????
ReplyDeleteNama : Rizki Octadiansyah
ReplyDeleteNPM : 0834010246
SoaL...
low = 0;
high = n-1;
while (low <= high)
{
middle = (low+high)/2;
if (key == data[middle]) return(middle);
if (key < data[middle) high = middle-1;
else low = middle+1;
}
return(-1);
}
JawaB....
Pencarian yg Berhasil:
Indeks Key Low High Middle
1 22 0 19 9
3 10 16 14
4 15 17
5 15 = hasil
7
8
9
11
12
14
16
17
19
20
21
22
23
25
26
27
Pencarian yg Gagal:
Indeks Key Low High Middle
1 10 0 19 9
3 10 13 14
4 10 11
5 9 10
7 Return -1
8
9
11
12
14
16
17
19
20
21
22
23
25
26
27
Hadinata.S
ReplyDelete0834010234
Source Code
{
low=0;
high=(n-1);
while(low<=high)
{
middle=(low+high)/2;
if(key==data[middle])
return(middle);
if(key 8< data[4]=8
12< "tracing success"
15<
17
18<
20< key low high middle
22
24 10 0 19 9
26 5 8 4
29 5 6
30 4 5
34
38 return(-1)
39 data tidak ditemukan
40 "tracing failed"
44
semoga dpt membantu dimassa eang akn datang...
akhir kata
wassalamualaikum.wr.wb.
Pak, berhubung kebingungan untuk naruh tabel hasil tracing, pekerjaan saya, saya posting di blog saya dibawah ini :
ReplyDeletehttp://iansky.wordpress.com/2009/03/30/tracing-searching/
Yang Berhasil
ReplyDeleteI K L H m
1 17 0 19 9
5 10 13 14
6 10 11
7 10
9
10
12
13
14
→ 15
→ 17 ←
→ 18
21
24
→ 26
28
32
34
38
40
Return (10)
Yang tidak berhasil
i K L H m
1 11 0 19 9
5 5 8 4
6 6 5 6
7 5
→ 9
→ 10
→ 12
13
14
→ 15
17
18
21
24
26
28
32
34
38
40
Return (-1)
Pencarian Yang Sukses
ReplyDeleteindex Key Low High middle
2 23 0 19 9
3 10 13 14
5 11
6 12 13
7
9
12
13
15
→ 16
17
→ 19
22
→ 23 ←
→ 25
26
27
29
31
32
Return (13)
Pencarian Yang Tidak Sukses
index Key Low High middle
2 10 0 19 9
3 8 4
5 5 5 6
6 6 5
→ 7
→ 9
→ 12
13
15
→ 16
17
19
22
23
25
26
27
29
31
Return (-1)
nama:widi ary
ReplyDeletenpm:0834010280
Pencarian Yang Berhasil:
Indeks Key Low High Middle
3 15 0 19 9
6 8 4
9 5 6
11 5 5
12 Return(5)
15
16
20
24
25
33
39
41
42
57
67
76
81
82
90
Pencarian Yang Gagal:
Indeks Key Low High Middle
3 23 0 19 9
6 8 4
9 5 6
11 7 7
12 8 8
15 7 Return (-1)
16
20
24
25
33
39
41
42
57
67
76
81
82
90
nama:hendri
ReplyDeletenpm:0834010256
Pencarian Yang Berhasil
Indeks Key Low High Middle
1 2 0 19 9
2 8 4
4 3 1
5 Return(1)
7
9
10
11
12
27
30
32
19
18
21
23
26
41
42
51
Pencarian Yang Gagal
Indeks Key Low High Middle
1 6 0 19 9
2 8 4
4 3 1
5 Return (-1)
7
9
10
11
12
27
30
32
19
18
21
23
26
41
42
51
nama:m.fanny
ReplyDeletenpm:0834010277
Pencarian Yang Berhasil:
Indeks Key Low High Middle
1 2 0 19 9
2 8 4
4 3 1
5 Return(1)
6
8
10
12
14
15
16
18
20
21
24
28
30
32
40
45
Pencarian Yang Gagal:
Indeks Key Low High Middle
1 3 0 19 9
2 8 4
4 2 3 1
5 3 2
6 4 3
8 Return (-1)
10
12
14
15
16
18
20
21
24
28
30
32
40
45
nama:novrizal
ReplyDeletenpm:0834010235
Pencarian Yang Berhasil
Indeks Key Low High Middle
1 4 0 19 9
2 8 4
3 3 1
4 2 2
5 3 3
6 Return(1)
7
8
10
15
16
20
22
30
17
18
13
77
99
89
Pencarian Yang Gagal
Indeks Key Low High Middle
1 9 0 19 9
2 8 4
3 5 6
4 7 7
5 8 8
6 Return (-1)
7
8
10
15
16
20
22
30
17
18
13
77
99
89
nama:juni hardi
ReplyDeletenpm:0834010218
Pencarian Yang Berhasil:
Indeks Key Low High Middle
1 5 0 19 9
2 8 4
4 3 1
5
6 2 2
8 3 3
9 Return(3)
10
15
16
19
22
23
25
27
28
35
33
34
40
Pencarian Yang Gagal:
Indeks Key Low High Middle
1 3 0 19 9
2 8 4
4 5 6
5 7 6 7
6
8 Return (-1)
9
10
15
16
19
22
23
25
27
28
35
33
34
40
nama:arif ady
ReplyDeletenpm:0834010231
Pencarian Yang Berhasil:
Indeks Key Low High Middle
1 7 0 19 9
3 8 4
5 Return(4)
6
7
9
10
11
13
15
16
17
18
19
23
27
30
31
35
38
Pencarian Yang Gagal:
Indeks Key Low High Middle
1 2 0 19 9
3 8 4
5 3 1
6 2 2
7 3 3
9 2 Return (-1)
10
11
13
15
16
17
18
19
23
27
30
31
35
38
nama:dadang
ReplyDeletenpm:0834010217
Pencarian Yang Berhasil:
Indeks Key Low High Middle
5 10 0 19 9
8 8 4
10 3 1
11 2 2
13 Return(2)
17
18
19
21
22
24
26
29
30
35
37
38
40
42
45
Pencarian Yang Gagal:
Indeks Key Low High Middle
5 20 0 19 9
8 8 4
10 5
11 7 6
13 8 7
17 7 8
18 Return (-1)
19
21
22
24
26
29
30
35
37
38
40
42
45
nama:ricky fujica
ReplyDeletenpm:0834010248
Pencarian Yang Berhasil:
Indeks Key Low High Middle
3 9 0 19 9
4 8 4
5 5 6
6 5 5
8 Return(5)
9
11
12
14
15
17
18
20
22
24
27
30
31
32
33
Pencarian Yang Gagal:
Indeks Key Low High Middle
3 19 0 19 9
4 14
5 10 13 11
6 12 13
8 12 12
9 11
11 Return (-1)
12
14
15
17
18
20
22
24
27
30
31
32
33
Moh Khoirul Huda - 0834010247
ReplyDeletePosting sudah diatas,,,
Thx,,
maaf pak tadi saya blum kasih nama,npm...
ReplyDeletenama : iLza Rosida
npm:0834010262
Nama : Aris Yulianto
ReplyDeleteNPM : 0834010242
KELAS : TF E
low = 0;
high = n-1;
while (low <= high)
{
middle = (low+high)/2;
if (key == data[middle]) return(middle);
if (key < data[middle) high = middle-1;
else low = middle+1;
}
return(-1);
}
Pencarian yg Berhasil:
Indeks Key Low High Middle
1 4 0 19 9
2 2 8 4
4 3 1
5 2=hasil
6
8
10
12
14
15
18
20
22
24
26
28
30
33
36
38
Pencarian Gagal:
Indeks Key Low High Middle
1 7 0 19 9
2 5 8 4
4 5 6
5 4 5
6 return-1
8
10
12
14
15
18
20
22
24
26
28
30
33
36
38
Nama : Syevi Rossiana N.H
ReplyDeleteNPM : 0834010254
Source Code
low = 0;
high = n-1;
while (low <= high)
{
middle = (low+high)/2;
if (key == data[middle]) return(middle);
if (key < data[middle) high = middle-1;
else low = middle+1;
}
return(-1);
}
Pencarian yang berhasil :
indeks n key low high middle
0 2 6 0 19 9
1 4 8 4
2 5 3 1
3 6 2 2
4 8 3 3
5 9
6 11 3=hasil
7 13
8 14
9 15
10 16
11 18
12 20
13 21
14 22
15 24
16 25
17 26
18 29
19 30
Pencarian Gagal
indeks n key low high middle
0 2 3 0 19 9
1 4 8 4
2 5 3 1
3 6 0 0
4 8 1
5 9
6 11 return -1
7 13
8 14
9 15
10 16
11 18
12 20
13 21
14 22
15 24
16 25
17 26
18 29
19 30
Nama : Tiara Swastika
ReplyDeleteKelas / NPM : TF E / 0834010226
Source code
low = 0;
high = n-1;
while (low <= high)
{
middle = (low+high)/2;
if (key == data[middle]) return(middle);
if (key < data[middle) high = middle-1;
else low = middle+1;
}
return(-1);
}
indeks data
0 1
1 2
2 4
3 5
4 7
5 8
6 10
7 11
8 12
9 15
10 18
11 21
12 22
13 27
14 30
15 32
16 36
17 39
18 42
19 43
Pencarian berhasil
key low high middle
5 0 19 9
8 4
2 3 1
3 2
3 = Hasil
Pencarian gagal
key low high middle
3 0 19 9
8 4
2 3 1
2
1
NAMA : RENANINGTYAS W.U
ReplyDeleteNPM : 0834010274
KELAS: TF / E
SOAL BINARRY SEARCH
low = 0;
high = n-1;
while (low <= high)
{
middle = (low+high)/2;
if (key == data[middle]) return(middle);
if (key < data[middle) high = middle-1;
else low = middle+1;
}
return(-1);
}
PENCARIAN YANG BERHASIL
INDEKS KEY LOW HIGH MIDDLE
3 4 0 19 9
4 8 4
5 3 1 = HASIL
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
PENCARIAN YANG GAGAL
INDEKS KEY LOW HIGH MIDDLE
3 23 0 19 9
4 10 14
5 15 17
6 18 18
7 19 19 = return (-1)
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
NAMA : Sharon Rabeccca Nanlohy
ReplyDeleteNPM : 0834010251
KELAS: TF / E
SOAL BINARRY SEARCH
low = 0;
high = n-1;
while (low <= high)
{
middle = (low+high)/2;
if (key == data[middle]) return(middle);
if (key < data[middle) high = middle-1;
else low = middle+1;
}
return(-1);
}
PENCARIAN YANG BERHASIL
INDEKS KEY LOW HIGH MIDDLE
3 9 0 19 9
4 8 4 = HASIL
6
8
9
10
12
13
15
16
17
18
19
20
22
24
26
27
29
30
PENCARIAN YANG GAGAL
INDEKS KEY LOW HIGH MIDDLE
3 11 0 19 8
4 7 3
6 4 5
8 6 6
9 7 7
10 6 = return(-1)
12
13
15
16
17
18
19
20
22
24
26
27
29
30
Nama : Ferawati Dinda
ReplyDeleteNPM : 0834010233
Source Code
low = 0;
high = n-1;
while (low <= high)
{
middle = (low+high)/2;
if (key == data[middle]) return(middle);
if (key < data[middle) high = middle-1;
else low = middle+1;
}
return(-1);
}
Pencarian yang berhasil :
indeks n key low high middle
0 2 8 0 19 9
1 4 8 4
2 6 2 3 1
3 8 3 2
4 10 3
5 12
6 14 3=hasil
7 16
8 18
9 20
10 21
11 22
12 23
13 24
14 25
15 26
16 27
17 28
18 29
19 30
Pencarian Gagal
indeks n key low high middle
0 2 7 0 19 9
1 4 8 4
2 5 3 1
3 6 2 2
4 8 3
5 9 3 3
6 11 3 return -1
7 13
8 14
9 15
10 16
11 18
12 20
13 21
14 22
15 24
16 25
17 26
18 29
19 30
Nama : Ferawati Dinda
ReplyDeleteNPM : 0834010233
Source Code
low = 0;
high = n-1;
while (low <= high)
{
middle = (low+high)/2;
if (key == data[middle]) return(middle);
if (key < data[middle) high = middle-1;
else low = middle+1;
}
return(-1);
}
Pencarian yang berhasil :
indeks n key low high middle
0 2 8 0 19 9
1 4 8 4
2 6 2 3 1
3 8 3 2
4 10 3
5 12
6 14 3=hasil
7 16
8 18
9 20
10 21
11 22
12 23
13 24
14 25
15 26
16 27
17 28
18 29
19 30
Pencarian Gagal
indeks n key low high middle
0 2 7 0 19 9
1 4 8 4
2 5 3 1
3 6 2 2
4 8 3
5 9 3 3
6 11 3 return -1
7 13
8 14
9 15
10 16
11 18
12 20
13 21
14 22
15 24
16 25
17 26
18 29
19 30
Nama : Reva Elsya Pradana
ReplyDeleteKelas: TF E
NPM : 0834010232
ALGORITMA dan TRACING BINARY
Soal
low = 0;
high = n-1;
while (low <= high)
{
middle = (low+high)/2;
if (key == data[middle]) return(middle);
if (key < data[middle) high = middle-1;
else low = middle+1;
}
return(-1);
}
Contoh tracing :
Pencarian berhasil
key = 9
Indeks key low high middle
0 1 0 19 9
1 3 8
2 4 4
3 6 5
4 7 6
5 8 anka 9 terdapat pada indeks ke-6
6 9
7 11
8 12
9 13
10 15
11 16
12 18
13 19
14 20
15 21
16 22
17 23
18 24
19 27
Pencarian gagal
key = 14
indeks key low high middle
0 1 0 19 8
1 3 9
2 4 10 14
3 6 13
4 7 11
5 8 10
6 9 9
7 11 9
8 12 10 return(-1)
9 13
10 15
11 16
12 18 angka 14 tidak terdapat pada indeks
13 19 manapun
14 20
15 21
16 22
17 23
18 24
19 27
Nama:Tri Mariya H.
ReplyDeleteNpm:0834010267
Algoritma dan Tracing
Low=0
High=n-1;
While(Low<=high)
{
Middle=(Low+high)/2;
If(key= =data[middle]);
Return(middle);
If(key<data[middle],high=middle-1);
Else Low=middle+1;
}
Return(-1);
indeks Data
0 2
1 3
2 4
3 5
4 6
5 11
6 12
7 13
8 14
9 15
10 16
11 17
12 18
13 21
14 22
15 23
16 24
17 25
18 26
19 27
.pencarian berhasil, key=4
Low High Middle
0 19 9
8 4
3 1
2 2
Indeks ke 2=4
B).pencarian gagal, key=7
Low High Middle
0 19 9
8 4
5 6
5 5
4
Nama : Cyndy Indah R
ReplyDeleteKelas / NPM : TF E / 0834010272
Source code
low = 0;
high = n-1;
while (low <= high)
{
middle = (low+high)/2;
if (key == data[middle]) return(middle);
if (key < data[middle) high = middle-1;
else low = middle+1;
}
return(-1);
}
indeks data
0 1
1 2
2 4
3 5
4 7
5 9
6 11
7 12
8 14
9 17
10 20
11 22
12 27
13 30
14 35
15 39
16 40
17 43
18 44
19 49
Pencarian berhasil
key low high middle
11 0 19 9
8 4
3 5
6 6 7
6 = hasil
Pencarian gagal
key low high middle
15 0 19 9
8 4
5 6
7 7
8 8
9 = return-1
RALAAAAAT...........
ReplyDeleteNama : Tiara Swastika
Kelas / NPM : TF E / 0834010226
Source code
low = 0;
high = n-1;
while (low <= high)
{
middle = (low+high)/2;
if (key == data[middle]) return(middle);
if (key < data[middle) high = middle-1;
else low = middle+1;
}
return(-1);
}
indeks data
0 1
1 2
2 4
3 5
4 7
5 8
6 10
7 11
8 12
9 15
10 18
11 21
12 22
13 27
14 30
15 32
16 36
17 39
18 42
19 43
Pencarian berhasil
key low high middle
5 0 19 9
8 4
2 3 1
3 2
3 = Hasil
Pencarian gagal
key low high middle
3 0 19 9
8 4
2 3 1
2
1 = return-1
Nama:Andayani
ReplyDeleteNpm:0834010273
Algoritma dan Tracing
Low=0
High=n-1;
While(Low<=high)
{
Middle=(Low+high)/2;
If(key= =data[middle]);
Return(middle);
If(key<data[middle],high=middle-1);
Else Low=middle+1;
}
Return(-1);
indeks Data
0 0
1 2
2 4
3 5
4 6
5 8
6 10
7 12
8 13
9 14
10 16
11 17
12 18
13 20
14 23
15 25
16 26
17 27
18 29
19 31
A).pencarian berhasil, key=20
Low High Middle
0 19 9
10 13 14
11
12 12
13 13
Indeks ke 13=20
B).pencarian gagal, key=7
Low High Middle
0 6 3
4 4 5
5 4
Nama : Cyndy Indah R
ReplyDeleteKelas / NPM : TF-E / 0834010272
Source code
low = 0;
high = n-1;
while (low <= high)
{
middle = (low+high)/2;
if (key == data[middle]) return(middle);
if (key < data[middle) high = middle-1;
else low = middle+1;
}
return(-1);
}
indeks data
0 1
1 2
2 4
3 5
4 7
5 9
6 11
7 12
8 14
9 17
10 20
11 22
12 27
13 30
14 35
15 39
16 40
17 43
18 44
19 49
Pencarian berhasil
key low high middle
11 0 19 9
8 4
3 5
6 6 7
6 = hasil
Pencarian gagal
key low high middle
15 0 19 9
8 4
5 6
7 7
8 8
9 = return-1
Nama:Andayani
ReplyDeleteNpm:0834010273
Kelas:TF E
RA....LAT.....
Algoritma dan Tracing
Low=0
High=n-1;
While(Low<=high)
{
Middle=(Low+high)/2;
If(key= =data[middle]);
Return(middle);
If(key<data[middle],high=middle-1);
Else Low=middle+1;
}
Return(-1);
indeks Data
0 0
1 2
2 4
3 5
4 6
5 8
6 10
7 12
8 13
9 14
10 16
11 17
12 18
13 20
14 23
15 25
16 26
17 27
18 29
19 31
.pencarian berhasil, key=20
Low High Middle
0 19 9
10 13 14
11
12 12
13 13 =hasil
B).pencarian gagal, key=7
Low High Middle
0 6 3
4 4 5
4
5 =return(-1)
Nama:Tri mariya
ReplyDeleteNpm:0834010267
Kelas:TF E
RA....LAT.....
Algoritma dan Tracing
Low=0
High=n-1;
While(Low<=high)
{
Middle=(Low+high)/2;
If(key= =data[middle]);
Return(middle);
If(key<data[middle],high=middle-1);
Else Low=middle+1;
}
Return(-1);
indeks Data
0 2
1 3
2 4
3 5
4 6
5 11
6 12
7 13
8 14
9 15
10 16
11 17
12 18
13 21
14 22
15 23
16 24
17 25
18 26
19 27
.pencarian berhasil, key=4
Low High Middle
0 19 9
8 4
3 1
2 2=hasil
B).pencarian gagal, key=7
Low High Middle
0 19 9
8 4
5 6
5 5
4=return(-1)
jawaban dr Tri Mariya dan teman2 setelahnya menurut saya relatih lebih mudah dipelajari dan dipahami krn dipisahkan antara array data dengan proses tracing, bukan dicampur aduk sehingga muncul kolom n, indeks, dan key sebagaimana yg dikerjakan oleh mhs lainnya. jd untuk tracing binary search cukup 3 variabel yg terlibat: low, high dan middle dengan gambar array data yg terpisah dr tracing.
ReplyDeleteTugas Pengganti mata kuliah sruktur data - TF-E
ReplyDeleteWIBOWO HADI SAPUTRO / 0834010264
BERHASIL
INDEX KEY LOW HIGH MIDDLE
0-2 10 0 19 9
1-4 5 8 4
2-6 5 6
3-7 5 HSL
4-9
5-10
6-12 GAGAL
7-13
8-18 KEY LOW HIGH MIDDLE
9-19 11 0 19 9
10-20 8 4
11-22 5 5 6
12-24 6 5
13-25
14-26 RETURN ( -1 )
15-27
16-29
17-30
18-32
19-33
Tugas Pengganti mata kuliah sruktur data - TF-E
ReplyDeleteMATIUS HERDONE / 0834010271
BERHASIL
INDEX KEY LOW HIGH MIDDLE
0-1 17 0 19 9
1-3 8
2-5 -----------------
3-7 5 4
4-9 7 6
5-11 8 hasil 7
6-13 ------------------
7-15 GAGAL 8
8-17 KEY LOW HIGH MIDDLE
9-19 18 0 19 9
10-21 8
11-23 -----------------
12-25 4
13-27 5
14-29 -----------------
15-31 7 6
16-33 8 7
17-35 9 8
18-37 9 = RETURN ( -1 )
19-39
lampiran file langsung ke email ya pak....
Theng Qyu.
Tugas Pengganti mata kuliah sruktur data - TF-E
ReplyDeleteWIBOWO HADI SAPUTRO / 0834010264
BERHASIL
INDEX KEY LOW HIGH MIDDLE
0-2 10 0 19 9
1-4 5 8 4
2-6 5 6
3-7 5HSL
4-9 -----------------------------------------------
5-10
6-12 GAGAL
7-13
8-18 KEY LOW HIGH MIDDLE
9-19 11 0 19 9
10-20 8 4
11-22 5 5 6
12-24 6 5
13-25
14-26 RETURN ( -1 )
15-27
16-29
17-30
18-32
19-33
Nama : Rendra Vebri F
ReplyDeleteNPM : 0834010222
Low =0
High=n-1;
While (Low <= High)
{
Middle = (low + high)/2;
If (key == data[middle])
Return (middle);
If (key < data[middle] high =middle-1);
Else low =middle+1;
}
Return (-1);
Yang berhasil
Indeks key low high Middle
2 6 0 19 9
4 8 4
5 3 1
6 2 2
7 3 3=hasil
9
10
11
13
14
15
16
18
21
22
23
24
26
27
28
Yang gagal
indeks key low high Middle
2 12 0 19 9
4 8 4
5 5 6
6 7 7
7 8 8
9 7
10 Return-1
11
13
14
15
16
18
21
22
23
24
26
27
28
Low =0
ReplyDeleteHigh=n-1;
While (Low <= High)
{
Middle = (low + high)/2;
If (key == data[middle])
Return (middle);
If (key < data[middle] high =middle-1);
Else low =middle+1;
}
Return (-1);
No Indeks
0 2
1 4
2 5
3 7
4 8
5 9
6 10
7 12
8 14
9 15
10 16
11 17
12 19
13 20
14 21
15 22
16 24
17 25
18 26
19 27
Key yang berhasil Key yang gagal
key Low High Middle
5 0 19 9
8 4
5 6
5 5
4
Return(-1)
key low high Middle
8 0 19 9
8 4 =hasil
(Dannis .Prassetiyawan 0834010237)
ReplyDeleteLow =0
High=n-1;
While (Low <= High)
{
Middle = (low + high)/2;
If (key == data[middle])
Return (middle);
If (key < data[middle] high =middle-1);
Else low =middle+1;
}
Return (-1);
No Indeks
0 2
1 4
2 5
3 7
4 8
5 9
6 10
7 12
8 14
9 15
10 16
11 17
12 19
13 20
14 21
15 22
16 24
17 25
18 26
19 27
Key yang berhasil
key low high Middle
8 0 19 9
8 4 =hasil
Key yang gagal
key Low High Middle
5 0 19 9
8 4
5 6
5 5
4
Return(-1)
tgs ini bknny brp komentar dari soal yg Bpk beri??!?
ReplyDeletenama : RADITIYA AGUNG S
ReplyDeletenpm : 0834010285
Pencarian dengan cara "binary search" memang relatif cukup cepat, dikarenakan data ini melakukan pencarian dengan berawal dari tengah array.
Dengan rumus binary search ini, pada saat data(key) yg dicari lebih besar dari data paling tengah.Maka secara looping pencarian akan bergeser kekanan.
Begitu pula sebaliknya, apabila data(key) yg dicari lebih kecil dari data yg paling tengah.looping akan bergeser ke kiri. Oleh karena itu, sebelumnya data harus sdh berurutan.
perintah : if(key==data[midle])return(midle), berfungsi pada saat data(key) yg dicari = data ke-(midle), maka hasil akan muncul nilai dari midle/posisi array.
pada saat data yg dicari(key) tidak ditemukan,maka hasil yg akan muncul adalah "-1". Dikarenakan pada akhir dari pemrogramannya terdapat perintah "return(-1)".
terima kasih.
Nama:rizal ade c
ReplyDeleteNPM:0834010260
BERHASIL
INDEX KEY LOW HIGH MIDDLE
0-2 10 0 19 9
1-4 5 8 4
2-6 5 6
3-7 5 HSL
4-9
5-10
6-12 GAGAL
7-13
8-18 KEY LOW HIGH MIDDLE
9-19 11 0 19 9
10-20 8 4
11-22 5 5 6
12-24 6 5
13-25
14-26 RETURN ( -1 )
15-27
16-29
17-30
18-32
19-33
pak knapa komenQ ada tulisan YOUR COMMENT IS AWAITING MODERATION apa ada yG salah dngan pKrjaanQ q juga blm tahuuuuuuuu. I SORYY PAK.......?
ReplyDeleteNama : Arif Firmansyah
ReplyDeleteKelas / NPM : TF-E / 0834010219
Source code
low = 0;
high = n-1;
while (low <= high)
{
middle = (low+high)/2;
if (key == data[middle]) return(middle);
if (key < data[middle) high = middle-1;
else low = middle+1;
}
return(-1);
}
indeks data
0 2
1 3
2 4
3 7
4 8
5 10
6 14
7 15
8 16
9 17
10 19
11 21
12 22
13 23
14 27
15 28
16 29
17 31
18 35
19 38
Pencarian Berhasil, Key = 14
low high middle
0 19 9
8 4
5 6 = hasil
Pencarian Gagal, Key = 5
low high middle
0 19 9
8 4
3 1
2 2
3 2 = return -1 3
Nama : Dwi Cahyo Wicaksono
ReplyDeleteKelas / NPM : TF E / 0834010221
Source code
low = 0;
high = n-1;
while (low <= high)
{
middle = (low+high)/2;
if (key == data[middle]) return(middle);
if (key < data[middle) high = middle-1;
else low = middle+1;
}
return(-1);
}
indeks data
0 1
1 2
2 3
3 4
4 8
5 10
6 11
7 13
8 15
9 17
10 25
11 30
12 37
13 41
14 42
15 43
16 44
17 45
18 49
19 50
Pencarian Berhasil, key = 8
low high middle
0 19 9
8 4 = hasil
Pencarian gagal, Key = 12
low high middle
0 19 9
8 4
5 6
7 6 = return-1 7
nama : irawan
ReplyDeletenpm : 0834010268
blog : privasy-irawan.blogspot.com
Pencarian yg sukses:
Indeks key low high middle
1 22 0 19 9
3 10 16 14
4 15 17
5 15 = hasil
7
8
9
11
12
14
16
17
19
20
21
22
23
25
26
27
Pencarian yang tidak sukses:
indeks key low high middle
1 10 0 19 9
3 10 13 14
4 10 11
5 9 10
7 Return -1
8
9
11
12
14
16
17
19
20
21
22
23
25
26
27
JaWabaN SoAl tUgas StRuktur dAtA
ReplyDeleteTRACING:
Pencarian Yang Berhasil
index key low high middle
4 25 0 21 11
5 12 15 16
7 13
8 14 15
9
11
13
15
17
18
19
21
24
25
27
28
29
31
33
35 return (15)
Pencarian Yang Tidak berhasil
index key low high middle
4 12 0 21 11
5 10 6
7 7 7 8
8 8 7
9
11
13
15
17
18
19
21
22
25
27
28
29
31
33 Return (-1)
nama = fadlan sazudi
ReplyDeletenpm = 0834010243
=========================================
source code =
low = 0;
high = n-1;
while (low <= high)
{
middle = (low+high)/2;
if (key == data[middle]) return(middle);
if (key < data[middle) high = middle-1;
else low = middle+1;
}
return(-1);
}
=============================================
jawaban =
ket =
i = indeks
n = data
i n
0 1
1 2
2 5
3 6
4 7
5 9
6 10
7 15
8 16
9 17
10 18
11 19
12 20
13 21
14 26
15 27
16 28
17 31
18 32
19 33
Pencarian Data yang berhasil
key = 5
L H M
0 19 9
8 4
3 1
2 2
key = 5 ditemukan d index ke-2
Pencarian Data yang gagal
key = 8
L H M
0 19 9
8 4
5 5 6
4 5
return -1
Rezza Bramono S.
ReplyDeleteNPM : 0834010269
Source Code
low = 0
high = n – 1 ;
while ( low <= high ) {
middle = ( low + high ) / 2 ;
if ( key = = data [middle] )
return (middle);
if ( key < data [middle] high = middle -1 );
else low = middle +1 ;
}
return (-1);
2 Pencarian Berhasil
4
6 key = 10
8 low high middle
10 0 19 9
12 8 4
14 4 = hasil
16
18 Pencarian Gagal
20
21 key = 19
22 low high middle
23 0 19 9
24 8 4
26 5 6
28 7 7
30 8 8
32 9
34 9 = return (-1)
36
nama ; muhammad arif zaidani
ReplyDeletenpm ; 0834010238
Indeks key low high middle
0 1 0 19 9
1 8
2 6 4
3 8 5
4 9 6
5 10 angka 10terdapat pada indeks ke-6
6 11
7 14
8 15
9 17
10 18
11 21
12 22
13 23
14 24
15 25
16 26
17 29
18 30
19 32
Pencarian gagal
Low High Middle
0 19 9
3 4
5 6
6 5
7 8 10
8 9 9
7 11 9
8 12 10 return(-1)
9 13
10 15
11 16
12 18 angka 14 tidak terdapat pada indeks
13 19 manapun
14 20
15 21
16 22
17 23
18 24
19 27
eh ia aku juga bikin eang ber tabell.
ReplyDeleteini alamat link sy..
http://ayi3z10gokil.blogspot.com/
terima kasih sebelumnya pakk........
ReplyDeleteNama : Rezza Bramono S.
ReplyDeleteNPM : 0834010269
Source Code
low = 0
high = n – 1 ;
while ( low <= high ) {
middle = ( low + high ) / 2 ;
if ( key = = data [middle] )
return (middle);
if ( key < data [middle] high = middle -1 );
else low = middle +1 ;
}
return (-1);
2 Pencarian Berhasil
4
6 key = 10
8 low high middle
10 0 19 9
12 8 4
14 4 = hasil
16
18 Pencarian Gagal
20
21 key = 19
22 low high middle
23 0 19 9
24 8 4
26 5 6
28 7 7
30 8 8
32 9
34 9 = return (-1)
36