Sunday, March 29, 2009

Pengganti Kuliah Struktur Data Kelas E

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 :)

54 comments:

  1. SIIAAPPP...berantas plagiator Pak !!!
    hhehehee

    jdi tgs ini memberi comment ttg tracing nya ya pak..
    thx..

    ReplyDelete
  2. pak pake lewat blog gag pak?????

    ReplyDelete
  3. Nama : Rizki Octadiansyah
    NPM : 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

    ReplyDelete
  4. Hadinata.S
    0834010234


    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.

    ReplyDelete
  5. Pak, berhubung kebingungan untuk naruh tabel hasil tracing, pekerjaan saya, saya posting di blog saya dibawah ini :

    http://iansky.wordpress.com/2009/03/30/tracing-searching/

    ReplyDelete
  6. Yang Berhasil

    I 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)

    ReplyDelete
  7. Pencarian Yang Sukses

    index 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)

    ReplyDelete
  8. nama:widi ary
    npm: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

    ReplyDelete
  9. nama:hendri
    npm: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

    ReplyDelete
  10. nama:m.fanny
    npm: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

    ReplyDelete
  11. nama:novrizal
    npm: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

    ReplyDelete
  12. nama:juni hardi
    npm: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

    ReplyDelete
  13. nama:arif ady
    npm: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

    ReplyDelete
  14. nama:dadang
    npm: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

    ReplyDelete
  15. nama:ricky fujica
    npm: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

    ReplyDelete
  16. Moh Khoirul Huda - 0834010247

    Posting sudah diatas,,,
    Thx,,

    ReplyDelete
  17. maaf pak tadi saya blum kasih nama,npm...

    nama : iLza Rosida
    npm:0834010262

    ReplyDelete
  18. Nama : Aris Yulianto
    NPM : 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

    ReplyDelete
  19. Nama : Syevi Rossiana N.H
    NPM : 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

    ReplyDelete
  20. Nama : 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

    ReplyDelete
  21. NAMA : RENANINGTYAS W.U
    NPM : 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

    ReplyDelete
  22. NAMA : Sharon Rabeccca Nanlohy
    NPM : 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

    ReplyDelete
  23. Nama : Ferawati Dinda
    NPM : 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

    ReplyDelete
  24. Nama : Ferawati Dinda
    NPM : 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

    ReplyDelete
  25. Reva Elsya PradanaMarch 31, 2009 at 3:42 AM

    Nama : Reva Elsya Pradana
    Kelas: 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

    ReplyDelete
  26. Nama:Tri Mariya H.
    Npm: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

    ReplyDelete
  27. Nama : Cyndy Indah R
    Kelas / 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

    ReplyDelete
  28. RALAAAAAT...........

    Nama : 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

    ReplyDelete
  29. Nama:Andayani
    Npm: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

    ReplyDelete
  30. Nama : Cyndy Indah R
    Kelas / 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

    ReplyDelete
  31. Nama:Andayani
    Npm: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)

    ReplyDelete
  32. Nama:Tri mariya
    Npm: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)

    ReplyDelete
  33. 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.

    ReplyDelete
  34. WIBOWO HADI SAPUTROMarch 31, 2009 at 4:35 AM

    Tugas Pengganti mata kuliah sruktur data - TF-E
    WIBOWO 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

    ReplyDelete
  35. Tugas Pengganti mata kuliah sruktur data - TF-E
    MATIUS 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.

    ReplyDelete
  36. WIBOWO HADI SAPUTROMarch 31, 2009 at 5:17 AM

    Tugas Pengganti mata kuliah sruktur data - TF-E
    WIBOWO 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

    ReplyDelete
  37. Nama : Rendra Vebri F
    NPM : 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

    ReplyDelete
  38. dannis prassetiyawanMarch 31, 2009 at 7:15 AM

    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);
    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

    ReplyDelete
  39. dannis prassetiyawanMarch 31, 2009 at 7:18 AM

    (Dannis .Prassetiyawan 0834010237)

    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);

    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)

    ReplyDelete
  40. tgs ini bknny brp komentar dari soal yg Bpk beri??!?

    ReplyDelete
  41. nama : RADITIYA AGUNG S
    npm : 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.

    ReplyDelete
  42. Nama:rizal ade c
    NPM: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

    ReplyDelete
  43. pak knapa komenQ ada tulisan YOUR COMMENT IS AWAITING MODERATION apa ada yG salah dngan pKrjaanQ q juga blm tahuuuuuuuu. I SORYY PAK.......?

    ReplyDelete
  44. Nama : Arif Firmansyah
    Kelas / 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

    ReplyDelete
  45. Nama : Dwi Cahyo Wicaksono
    Kelas / 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

    ReplyDelete
  46. nama : irawan
    npm : 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

    ReplyDelete
  47. JaWabaN SoAl tUgas StRuktur dAtA
    TRACING:
    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)

    ReplyDelete
  48. nama = fadlan sazudi
    npm = 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

    ReplyDelete
  49. Rezza Bramono S.
    NPM : 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

    ReplyDelete
  50. muhammad arif zaidaniMarch 31, 2009 at 1:41 PM

    nama ; muhammad arif zaidani
    npm ; 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

    ReplyDelete
  51. eh ia aku juga bikin eang ber tabell.

    ini alamat link sy..

    http://ayi3z10gokil.blogspot.com/

    ReplyDelete
  52. terima kasih sebelumnya pakk........

    ReplyDelete
  53. Nama : Rezza Bramono S.
    NPM : 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

    ReplyDelete