SlideShare ist ein Scribd-Unternehmen logo
1 von 44
Testing dan Implementasi Sistem Slamet Sn
Outline  ,[object Object],[object Object],[object Object]
White box testing ,[object Object],[object Object],[object Object],[object Object]
[object Object],[object Object],[object Object],[object Object],Cont’d
Cont’d ,[object Object],[object Object],[object Object],[object Object]
Kegunaan  ,[object Object],[object Object],[object Object],[object Object]
[object Object]
 
Komponen flowgrpah ,[object Object],[object Object],[object Object],[object Object],[object Object]
Cont’d ,[object Object],[object Object]
Cakupan pernyataan ,[object Object],[object Object],[object Object]
Contoh Cakupan Pernyataan ,[object Object],[object Object],[object Object]
Cakupan cabang ,[object Object],[object Object],[object Object]
Contoh Cakupan Cabang ,[object Object],[object Object],[object Object]
Cakupan jalur ,[object Object],[object Object],[object Object]
Contoh Cakupan Jalur ,[object Object],[object Object]
Disain cakupan tes ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Basis path testing ,[object Object],[object Object],[object Object],[object Object]
Cont’d ,[object Object],[object Object],[object Object],[object Object]
Cyclomatic complexity ,[object Object],[object Object]
Cont’d ,[object Object],[object Object]
[object Object]
Pembuatan  test cases  dengan menggunakan  cyclomatic complexity : ,[object Object],[object Object],[object Object],[object Object],[object Object]
[object Object]
public static int binarySearch( int key, int[] sequence ) { int bottom = 0; int top = sequence.length - 1; int mid = 0; int keyPosition = -1; while( bottom <= top && keyPosition == -1 ) { mid = ( top + bottom ) / 2; if( sequence[ mid ] == key ) { keyPosition = mid; } else { if( sequence[ mid ] < key ) { bottom = mid + 1; } else { top = mid - 1; } } } return keyPosition; }
public static int binarySearch( int key, int[] sequence ) { int bottom = 0; int top = sequence.length - 1; int mid = 0; int keyPosition = -1; while( bottom <= top && keyPosition == -1 ) { mid = ( top + bottom ) / 2; if( sequence[ mid ] == key ) { keyPosition = mid; } else { if( sequence[ mid ] < key ) { bottom = mid + 1; } else { top = mid - 1; } } } return keyPosition; } 1 1
public static int binarySearch( int key, int[] sequence ) { int bottom = 0; int top = sequence.length - 1; int mid = 0; int keyPosition = -1; while( bottom <= top && keyPosition == -1 ) { mid = ( top + bottom ) / 2; if( sequence[ mid ] == key ) { keyPosition = mid; } else { if( sequence[ mid ] < key ) { bottom = mid + 1; } else { top = mid - 1; } } } return keyPosition; } 1 2 1 2
1 2 10 F public static int binarySearch( int key, int[] sequence ) { int bottom = 0; int top = sequence.length - 1; int mid = 0; int keyPosition = -1; while( bottom <= top && keyPosition == -1 ) { mid = ( top + bottom ) / 2; if( sequence[ mid ] == key ) { keyPosition = mid; } else { if( sequence[ mid ] < key ) { bottom = mid + 1; } else { top = mid - 1; } } } return keyPosition; } 10 F 1 2
3 1 2 10 F T F public static int binarySearch( int key, int[] sequence ) { int bottom = 0; int top = sequence.length - 1; int mid = 0; int keyPosition = -1; while( bottom <= top && keyPosition == -1 ) { mid = ( top + bottom ) / 2; if( sequence[ mid ] == key ) { keyPosition = mid; } else { if( sequence[ mid ] < key ) { bottom = mid + 1; } else { top = mid - 1; } } } return keyPosition; } 10 3 T F 10 F 1 2
3 1 2 10 F T F 4 T 5 T public static int binarySearch( int key, int[] sequence ) { int bottom = 0; int top = sequence.length - 1; int mid = 0; int keyPosition = -1; while( bottom <= top && keyPosition == -1 ) { mid = ( top + bottom ) / 2; if( sequence[ mid ] == key ) { keyPosition = mid; } else { if( sequence[ mid ] < key ) { bottom = mid + 1; } else { top = mid - 1; } } } return keyPosition; } 4 T 5 T 10 3 T F F 1 2
3 1 2 10 F T F 4 T 5 T 6 F public static int binarySearch( int key, int[] sequence ) { int bottom = 0; int top = sequence.length - 1; int mid = 0; int keyPosition = -1; while( bottom <= top && keyPosition == -1 ) { mid = ( top + bottom ) / 2; if( sequence[ mid ] == key ) { keyPosition = mid; } else { if( sequence[ mid ] < key ) { bottom = mid + 1; } else { top = mid - 1; } } } return keyPosition; } 10 6 4 T 5 T 3 T F F 1 2 F
3 1 2 10 F T F 4 T 5 T 6 F 9 public static int binarySearch( int key, int[] sequence ) { int bottom = 0; int top = sequence.length - 1; int mid = 0; int keyPosition = -1; while( bottom <= top && keyPosition == -1 ) { mid = ( top + bottom ) / 2; if( sequence[ mid ] == key ) { keyPosition = mid; } else { if( sequence[ mid ] < key ) { bottom = mid + 1; } else { top = mid - 1; } } } return keyPosition; } 9 6 4 T 5 T 3 T F F 1 2 F 10
3 1 2 10 F T F 4 T 5 T 6 F 7 T 9 public static int binarySearch( int key, int[] sequence ) { int bottom = 0; int top = sequence.length - 1; int mid = 0; int keyPosition = -1; while( bottom <= top && keyPosition == -1 ) { mid = ( top + bottom ) / 2; if( sequence[ mid ] == key ) { keyPosition = mid; } else { if( sequence[ mid ] < key ) { bottom = mid + 1; } else { top = mid - 1; } } } return keyPosition; } 7 T 9 6 4 T 5 T 3 T F F 1 2 F 10
3 1 2 10 F T F 4 T 5 T 6 F 7 T 8 F 9 public static int binarySearch( int key, int[] sequence ) { int bottom = 0; int top = sequence.length - 1; int mid = 0; int keyPosition = -1; while( bottom <= top && keyPosition == -1 ) { mid = ( top + bottom ) / 2; if( sequence[ mid ] == key ) { keyPosition = mid; } else { if( sequence[ mid ] < key ) { bottom = mid + 1; } else { top = mid - 1; } } } return keyPosition; } 8 F 7 T 9 6 4 T 5 T 3 T F F 1 2 F 10
3 1 2 10 F T F 4 T 5 T 6 F 7 T 8 F 9 public static int binarySearch( int key, int[] sequence ) { int bottom = 0; int top = sequence.length - 1; int mid = 0; int keyPosition = -1; while( bottom <= top && keyPosition == -1 ) { mid = ( top + bottom ) / 2; if( sequence[ mid ] == key ) { keyPosition = mid; } else { if( sequence[ mid ] < key ) { bottom = mid + 1; } else { top = mid - 1; } } } return keyPosition; } 8 F 7 T 9 6 4 T 5 T 3 T F F 1 2 F 10
3 1 2 10 F T F 4 T 5 T 6 F 7 T 8 F 9 public static int binarySearch( int key, int[] sequence ) { int bottom = 0; int top = sequence.length - 1; int mid = 0; int keyPosition = -1; while( bottom <= top && keyPosition == -1 ) { mid = ( top + bottom ) / 2; if( sequence[ mid ] == key ) { keyPosition = mid; } else { if( sequence[ mid ] < key ) { bottom = mid + 1; } else { top = mid - 1; } } } return keyPosition; } 8 F 7 T 9 6 4 T 5 T 3 T F F 1 2 F 10
public static int binarySearch( int key, int[] sequence ) { int bottom = 0; int top = sequence.length - 1; int mid = 0; int keyPosition = -1; while( bottom <= top && keyPosition == -1 ) { mid = ( top + bottom ) / 2; if( sequence[ mid ] == key ) { keyPosition = mid; } else { if( sequence[ mid ] < key ) { bottom = mid + 1; } else { top = mid - 1; } } } return keyPosition; } 3 1 2 10 F T F 4 T 5 T 6 F 7 T 8 F 9 8 F 7 T 9 6 4 T 5 T 3 T F F 1 2 F 10
[object Object],[object Object],[object Object],[object Object],3 1 2 10 F T F 4 T 5 T 6 F 7 T 8 F 9
[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],3 1 2 10 F T F 4 T 5 T 6 F 7 T 8 F 9
[object Object]
[object Object],[object Object],[object Object],[object Object],public static int binarySearch( int key, int[] sequence ) { int bottom = 0; int top = sequence.length - 1; int mid = 0; int keyPosition = -1; while( bottom <= top && keyPosition == -1 ) { mid = ( top + bottom ) / 2; if( sequence[ mid ] == key ) { keyPosition = mid; } else { if( sequence[ mid ] < key ) { bottom = mid + 1; } else { top = mid - 1; } } } return keyPosition; }
[object Object],public static int binarySearch( int key, int[] sequence ) { int bottom = 0; int top = sequence.length - 1; int mid = 0; int keyPosition = -1; while( bottom <= top && keyPosition == -1 ) { mid = ( top + bottom ) / 2; if( sequence[ mid ] == key ) { keyPosition = mid; } else { if( sequence[ mid ] < key ) { bottom = mid + 1; } else { top = mid - 1; } } } return keyPosition; } ,[object Object],3 1 2 10 F T F 4 T 5 T 6 F 7 T 8 F 9
[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Faktorial.java ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]

Weitere ähnliche Inhalte

Was ist angesagt?

LyX untuk Menulis Skripsi
LyX untuk Menulis SkripsiLyX untuk Menulis Skripsi
LyX untuk Menulis SkripsiEdy Eko Santoso
 
Pertemuan 1 pengenalan mobile programming
Pertemuan 1 pengenalan mobile programmingPertemuan 1 pengenalan mobile programming
Pertemuan 1 pengenalan mobile programmingheriakj
 
Contoh Screenshot Ragam Dialog Interaktif
Contoh Screenshot Ragam Dialog Interaktif Contoh Screenshot Ragam Dialog Interaktif
Contoh Screenshot Ragam Dialog Interaktif naufals11
 
Unix Shell Scripting
Unix Shell ScriptingUnix Shell Scripting
Unix Shell ScriptingMustafa Qasim
 
Pertemuan 6 sifat sifat bahasa Reguler
Pertemuan 6 sifat sifat bahasa RegulerPertemuan 6 sifat sifat bahasa Reguler
Pertemuan 6 sifat sifat bahasa RegulerDhan junkie
 
Compiler Construction introduction
Compiler Construction introductionCompiler Construction introduction
Compiler Construction introductionRana Ehtisham Ul Haq
 
1. Algoritma, Struktur Data dan Pemrograman Terstruktur
1. Algoritma, Struktur Data dan Pemrograman Terstruktur1. Algoritma, Struktur Data dan Pemrograman Terstruktur
1. Algoritma, Struktur Data dan Pemrograman TerstrukturKelinci Coklat
 
PPT Desain Antar Muka.pptx
PPT Desain Antar Muka.pptxPPT Desain Antar Muka.pptx
PPT Desain Antar Muka.pptxMirnaNia
 
Materi 6 perangkat lunak aplikasi
Materi 6 perangkat lunak aplikasiMateri 6 perangkat lunak aplikasi
Materi 6 perangkat lunak aplikasiFahuda E
 
Laporan praktikum iv.2 visual
Laporan praktikum iv.2 visualLaporan praktikum iv.2 visual
Laporan praktikum iv.2 visualrahmi wahyuni
 
metode-pengujian-whitebox
metode-pengujian-whiteboxmetode-pengujian-whitebox
metode-pengujian-whiteboxIwan Kurniarasa
 
Loops in c language
Loops in c languageLoops in c language
Loops in c languagetanmaymodi4
 
Materi ERD (Entity Relationship Diagram).pptx
Materi ERD (Entity Relationship Diagram).pptxMateri ERD (Entity Relationship Diagram).pptx
Materi ERD (Entity Relationship Diagram).pptxTaufikHidayat8361
 

Was ist angesagt? (20)

LyX untuk Menulis Skripsi
LyX untuk Menulis SkripsiLyX untuk Menulis Skripsi
LyX untuk Menulis Skripsi
 
Pertemuan 1 pengenalan mobile programming
Pertemuan 1 pengenalan mobile programmingPertemuan 1 pengenalan mobile programming
Pertemuan 1 pengenalan mobile programming
 
Teknik kompilasi
Teknik kompilasiTeknik kompilasi
Teknik kompilasi
 
Contoh Screenshot Ragam Dialog Interaktif
Contoh Screenshot Ragam Dialog Interaktif Contoh Screenshot Ragam Dialog Interaktif
Contoh Screenshot Ragam Dialog Interaktif
 
Sistem operasi
Sistem operasiSistem operasi
Sistem operasi
 
Unix Shell Scripting
Unix Shell ScriptingUnix Shell Scripting
Unix Shell Scripting
 
Pertemuan 6 sifat sifat bahasa Reguler
Pertemuan 6 sifat sifat bahasa RegulerPertemuan 6 sifat sifat bahasa Reguler
Pertemuan 6 sifat sifat bahasa Reguler
 
Compiler Construction introduction
Compiler Construction introductionCompiler Construction introduction
Compiler Construction introduction
 
1. Algoritma, Struktur Data dan Pemrograman Terstruktur
1. Algoritma, Struktur Data dan Pemrograman Terstruktur1. Algoritma, Struktur Data dan Pemrograman Terstruktur
1. Algoritma, Struktur Data dan Pemrograman Terstruktur
 
PPT Desain Antar Muka.pptx
PPT Desain Antar Muka.pptxPPT Desain Antar Muka.pptx
PPT Desain Antar Muka.pptx
 
Antarmuka Berbasis Interaksi Grafis
Antarmuka Berbasis Interaksi GrafisAntarmuka Berbasis Interaksi Grafis
Antarmuka Berbasis Interaksi Grafis
 
Kumpulan catatan Teknik Kompilasi
Kumpulan catatan Teknik KompilasiKumpulan catatan Teknik Kompilasi
Kumpulan catatan Teknik Kompilasi
 
GoLang_1
GoLang_1GoLang_1
GoLang_1
 
Sistem Operasi
Sistem OperasiSistem Operasi
Sistem Operasi
 
Materi 6 perangkat lunak aplikasi
Materi 6 perangkat lunak aplikasiMateri 6 perangkat lunak aplikasi
Materi 6 perangkat lunak aplikasi
 
Laporan praktikum iv.2 visual
Laporan praktikum iv.2 visualLaporan praktikum iv.2 visual
Laporan praktikum iv.2 visual
 
metode-pengujian-whitebox
metode-pengujian-whiteboxmetode-pengujian-whitebox
metode-pengujian-whitebox
 
Loops in c language
Loops in c languageLoops in c language
Loops in c language
 
Materi ERD (Entity Relationship Diagram).pptx
Materi ERD (Entity Relationship Diagram).pptxMateri ERD (Entity Relationship Diagram).pptx
Materi ERD (Entity Relationship Diagram).pptx
 
UNIT CONTROL Tgs.ppt
 UNIT CONTROL  Tgs.ppt UNIT CONTROL  Tgs.ppt
UNIT CONTROL Tgs.ppt
 

Andere mochten auch

Testing&implementasi 3
Testing&implementasi 3Testing&implementasi 3
Testing&implementasi 3aiiniR
 
The Buyer's Journey - by Chris Lema
The Buyer's Journey - by Chris LemaThe Buyer's Journey - by Chris Lema
The Buyer's Journey - by Chris LemaChris Lema
 
Classroom Management Tips for Kids and Adolescents
Classroom Management Tips for Kids and AdolescentsClassroom Management Tips for Kids and Adolescents
Classroom Management Tips for Kids and AdolescentsShelly Sanchez Terrell
 
The Presentation Come-Back Kid
The Presentation Come-Back KidThe Presentation Come-Back Kid
The Presentation Come-Back KidEthos3
 

Andere mochten auch (8)

Minggu Vi
Minggu ViMinggu Vi
Minggu Vi
 
Minggu Ii
Minggu IiMinggu Ii
Minggu Ii
 
Minggu Iv
Minggu IvMinggu Iv
Minggu Iv
 
Whitebox
WhiteboxWhitebox
Whitebox
 
Testing&implementasi 3
Testing&implementasi 3Testing&implementasi 3
Testing&implementasi 3
 
The Buyer's Journey - by Chris Lema
The Buyer's Journey - by Chris LemaThe Buyer's Journey - by Chris Lema
The Buyer's Journey - by Chris Lema
 
Classroom Management Tips for Kids and Adolescents
Classroom Management Tips for Kids and AdolescentsClassroom Management Tips for Kids and Adolescents
Classroom Management Tips for Kids and Adolescents
 
The Presentation Come-Back Kid
The Presentation Come-Back KidThe Presentation Come-Back Kid
The Presentation Come-Back Kid
 

Ähnlich wie Tes White Box untuk Algoritma Pencarian Binary

Materi 3&4 prosedur
Materi 3&4   prosedurMateri 3&4   prosedur
Materi 3&4 prosedurAlfa Felle
 
Presentasi Pengenalan konsep pemrograman
Presentasi Pengenalan konsep pemrogramanPresentasi Pengenalan konsep pemrograman
Presentasi Pengenalan konsep pemrogramanMuraba Nasuha
 
Penggunaan loop sebagai kerangka dasar algoritma
Penggunaan loop sebagai kerangka dasar algoritma Penggunaan loop sebagai kerangka dasar algoritma
Penggunaan loop sebagai kerangka dasar algoritma Fazar Ikhwan Guntara
 
Testing&implementasi 4
Testing&implementasi 4Testing&implementasi 4
Testing&implementasi 4aiiniR
 
Struktur Runtunan Algoritma
Struktur Runtunan AlgoritmaStruktur Runtunan Algoritma
Struktur Runtunan Algoritmacasnadi
 
Pengenalan konsep pemrograman c++
Pengenalan konsep pemrograman c++ Pengenalan konsep pemrograman c++
Pengenalan konsep pemrograman c++ Aan Einsam
 
90594412 bab-3-pengaturan-aliran-pemograman-fotran
90594412 bab-3-pengaturan-aliran-pemograman-fotran90594412 bab-3-pengaturan-aliran-pemograman-fotran
90594412 bab-3-pengaturan-aliran-pemograman-fotranmocoz
 
Struktur kontrol perulangan
Struktur kontrol perulanganStruktur kontrol perulangan
Struktur kontrol perulanganshintiatrie
 
Jeni Intro2 Bab04 Tour Dari Package Java.Lang
Jeni Intro2 Bab04 Tour Dari Package Java.LangJeni Intro2 Bab04 Tour Dari Package Java.Lang
Jeni Intro2 Bab04 Tour Dari Package Java.LangIndividual Consultants
 
Materi pelatihan java_fundamental
Materi pelatihan java_fundamentalMateri pelatihan java_fundamental
Materi pelatihan java_fundamentalLaode ADB Ali
 
Jeni Intro2 Bab03 Teknik Pemrograman Lanjut
Jeni Intro2 Bab03 Teknik Pemrograman LanjutJeni Intro2 Bab03 Teknik Pemrograman Lanjut
Jeni Intro2 Bab03 Teknik Pemrograman LanjutIndividual Consultants
 
Modul Pascal.pdf
Modul Pascal.pdfModul Pascal.pdf
Modul Pascal.pdfsylaaulia
 
Modul Pascal Mengenal Flowchart
Modul Pascal Mengenal FlowchartModul Pascal Mengenal Flowchart
Modul Pascal Mengenal FlowchartIrwien Andriyanto
 

Ähnlich wie Tes White Box untuk Algoritma Pencarian Binary (20)

whitebox testing
whitebox testingwhitebox testing
whitebox testing
 
Algoritma dan Pemrograman
Algoritma dan Pemrograman Algoritma dan Pemrograman
Algoritma dan Pemrograman
 
Materi 3&4 prosedur
Materi 3&4   prosedurMateri 3&4   prosedur
Materi 3&4 prosedur
 
Pengenalan c++ bagian 1
Pengenalan c++ bagian 1Pengenalan c++ bagian 1
Pengenalan c++ bagian 1
 
Tugas sp algo
Tugas sp algoTugas sp algo
Tugas sp algo
 
Presentasi Pengenalan konsep pemrograman
Presentasi Pengenalan konsep pemrogramanPresentasi Pengenalan konsep pemrograman
Presentasi Pengenalan konsep pemrograman
 
Penggunaan loop sebagai kerangka dasar algoritma
Penggunaan loop sebagai kerangka dasar algoritma Penggunaan loop sebagai kerangka dasar algoritma
Penggunaan loop sebagai kerangka dasar algoritma
 
Testing&implementasi 4
Testing&implementasi 4Testing&implementasi 4
Testing&implementasi 4
 
Struktur Runtunan Algoritma
Struktur Runtunan AlgoritmaStruktur Runtunan Algoritma
Struktur Runtunan Algoritma
 
Matlab 3
Matlab 3Matlab 3
Matlab 3
 
Pengenalan konsep pemrograman c++
Pengenalan konsep pemrograman c++ Pengenalan konsep pemrograman c++
Pengenalan konsep pemrograman c++
 
90594412 bab-3-pengaturan-aliran-pemograman-fotran
90594412 bab-3-pengaturan-aliran-pemograman-fotran90594412 bab-3-pengaturan-aliran-pemograman-fotran
90594412 bab-3-pengaturan-aliran-pemograman-fotran
 
Struktur kontrol perulangan
Struktur kontrol perulanganStruktur kontrol perulangan
Struktur kontrol perulangan
 
Jeni Intro2 Bab04 Tour Dari Package Java.Lang
Jeni Intro2 Bab04 Tour Dari Package Java.LangJeni Intro2 Bab04 Tour Dari Package Java.Lang
Jeni Intro2 Bab04 Tour Dari Package Java.Lang
 
Materi pelatihan java_fundamental
Materi pelatihan java_fundamentalMateri pelatihan java_fundamental
Materi pelatihan java_fundamental
 
Bab 3
Bab 3Bab 3
Bab 3
 
Praktikum 4A
Praktikum 4APraktikum 4A
Praktikum 4A
 
Jeni Intro2 Bab03 Teknik Pemrograman Lanjut
Jeni Intro2 Bab03 Teknik Pemrograman LanjutJeni Intro2 Bab03 Teknik Pemrograman Lanjut
Jeni Intro2 Bab03 Teknik Pemrograman Lanjut
 
Modul Pascal.pdf
Modul Pascal.pdfModul Pascal.pdf
Modul Pascal.pdf
 
Modul Pascal Mengenal Flowchart
Modul Pascal Mengenal FlowchartModul Pascal Mengenal Flowchart
Modul Pascal Mengenal Flowchart
 

Tes White Box untuk Algoritma Pencarian Binary

  • 1. Testing dan Implementasi Sistem Slamet Sn
  • 2.
  • 3.
  • 4.
  • 5.
  • 6.
  • 7.
  • 8.  
  • 9.
  • 10.
  • 11.
  • 12.
  • 13.
  • 14.
  • 15.
  • 16.
  • 17.
  • 18.
  • 19.
  • 20.
  • 21.
  • 22.
  • 23.
  • 24.
  • 25. public static int binarySearch( int key, int[] sequence ) { int bottom = 0; int top = sequence.length - 1; int mid = 0; int keyPosition = -1; while( bottom <= top && keyPosition == -1 ) { mid = ( top + bottom ) / 2; if( sequence[ mid ] == key ) { keyPosition = mid; } else { if( sequence[ mid ] < key ) { bottom = mid + 1; } else { top = mid - 1; } } } return keyPosition; }
  • 26. public static int binarySearch( int key, int[] sequence ) { int bottom = 0; int top = sequence.length - 1; int mid = 0; int keyPosition = -1; while( bottom <= top && keyPosition == -1 ) { mid = ( top + bottom ) / 2; if( sequence[ mid ] == key ) { keyPosition = mid; } else { if( sequence[ mid ] < key ) { bottom = mid + 1; } else { top = mid - 1; } } } return keyPosition; } 1 1
  • 27. public static int binarySearch( int key, int[] sequence ) { int bottom = 0; int top = sequence.length - 1; int mid = 0; int keyPosition = -1; while( bottom <= top && keyPosition == -1 ) { mid = ( top + bottom ) / 2; if( sequence[ mid ] == key ) { keyPosition = mid; } else { if( sequence[ mid ] < key ) { bottom = mid + 1; } else { top = mid - 1; } } } return keyPosition; } 1 2 1 2
  • 28. 1 2 10 F public static int binarySearch( int key, int[] sequence ) { int bottom = 0; int top = sequence.length - 1; int mid = 0; int keyPosition = -1; while( bottom <= top && keyPosition == -1 ) { mid = ( top + bottom ) / 2; if( sequence[ mid ] == key ) { keyPosition = mid; } else { if( sequence[ mid ] < key ) { bottom = mid + 1; } else { top = mid - 1; } } } return keyPosition; } 10 F 1 2
  • 29. 3 1 2 10 F T F public static int binarySearch( int key, int[] sequence ) { int bottom = 0; int top = sequence.length - 1; int mid = 0; int keyPosition = -1; while( bottom <= top && keyPosition == -1 ) { mid = ( top + bottom ) / 2; if( sequence[ mid ] == key ) { keyPosition = mid; } else { if( sequence[ mid ] < key ) { bottom = mid + 1; } else { top = mid - 1; } } } return keyPosition; } 10 3 T F 10 F 1 2
  • 30. 3 1 2 10 F T F 4 T 5 T public static int binarySearch( int key, int[] sequence ) { int bottom = 0; int top = sequence.length - 1; int mid = 0; int keyPosition = -1; while( bottom <= top && keyPosition == -1 ) { mid = ( top + bottom ) / 2; if( sequence[ mid ] == key ) { keyPosition = mid; } else { if( sequence[ mid ] < key ) { bottom = mid + 1; } else { top = mid - 1; } } } return keyPosition; } 4 T 5 T 10 3 T F F 1 2
  • 31. 3 1 2 10 F T F 4 T 5 T 6 F public static int binarySearch( int key, int[] sequence ) { int bottom = 0; int top = sequence.length - 1; int mid = 0; int keyPosition = -1; while( bottom <= top && keyPosition == -1 ) { mid = ( top + bottom ) / 2; if( sequence[ mid ] == key ) { keyPosition = mid; } else { if( sequence[ mid ] < key ) { bottom = mid + 1; } else { top = mid - 1; } } } return keyPosition; } 10 6 4 T 5 T 3 T F F 1 2 F
  • 32. 3 1 2 10 F T F 4 T 5 T 6 F 9 public static int binarySearch( int key, int[] sequence ) { int bottom = 0; int top = sequence.length - 1; int mid = 0; int keyPosition = -1; while( bottom <= top && keyPosition == -1 ) { mid = ( top + bottom ) / 2; if( sequence[ mid ] == key ) { keyPosition = mid; } else { if( sequence[ mid ] < key ) { bottom = mid + 1; } else { top = mid - 1; } } } return keyPosition; } 9 6 4 T 5 T 3 T F F 1 2 F 10
  • 33. 3 1 2 10 F T F 4 T 5 T 6 F 7 T 9 public static int binarySearch( int key, int[] sequence ) { int bottom = 0; int top = sequence.length - 1; int mid = 0; int keyPosition = -1; while( bottom <= top && keyPosition == -1 ) { mid = ( top + bottom ) / 2; if( sequence[ mid ] == key ) { keyPosition = mid; } else { if( sequence[ mid ] < key ) { bottom = mid + 1; } else { top = mid - 1; } } } return keyPosition; } 7 T 9 6 4 T 5 T 3 T F F 1 2 F 10
  • 34. 3 1 2 10 F T F 4 T 5 T 6 F 7 T 8 F 9 public static int binarySearch( int key, int[] sequence ) { int bottom = 0; int top = sequence.length - 1; int mid = 0; int keyPosition = -1; while( bottom <= top && keyPosition == -1 ) { mid = ( top + bottom ) / 2; if( sequence[ mid ] == key ) { keyPosition = mid; } else { if( sequence[ mid ] < key ) { bottom = mid + 1; } else { top = mid - 1; } } } return keyPosition; } 8 F 7 T 9 6 4 T 5 T 3 T F F 1 2 F 10
  • 35. 3 1 2 10 F T F 4 T 5 T 6 F 7 T 8 F 9 public static int binarySearch( int key, int[] sequence ) { int bottom = 0; int top = sequence.length - 1; int mid = 0; int keyPosition = -1; while( bottom <= top && keyPosition == -1 ) { mid = ( top + bottom ) / 2; if( sequence[ mid ] == key ) { keyPosition = mid; } else { if( sequence[ mid ] < key ) { bottom = mid + 1; } else { top = mid - 1; } } } return keyPosition; } 8 F 7 T 9 6 4 T 5 T 3 T F F 1 2 F 10
  • 36. 3 1 2 10 F T F 4 T 5 T 6 F 7 T 8 F 9 public static int binarySearch( int key, int[] sequence ) { int bottom = 0; int top = sequence.length - 1; int mid = 0; int keyPosition = -1; while( bottom <= top && keyPosition == -1 ) { mid = ( top + bottom ) / 2; if( sequence[ mid ] == key ) { keyPosition = mid; } else { if( sequence[ mid ] < key ) { bottom = mid + 1; } else { top = mid - 1; } } } return keyPosition; } 8 F 7 T 9 6 4 T 5 T 3 T F F 1 2 F 10
  • 37. public static int binarySearch( int key, int[] sequence ) { int bottom = 0; int top = sequence.length - 1; int mid = 0; int keyPosition = -1; while( bottom <= top && keyPosition == -1 ) { mid = ( top + bottom ) / 2; if( sequence[ mid ] == key ) { keyPosition = mid; } else { if( sequence[ mid ] < key ) { bottom = mid + 1; } else { top = mid - 1; } } } return keyPosition; } 3 1 2 10 F T F 4 T 5 T 6 F 7 T 8 F 9 8 F 7 T 9 6 4 T 5 T 3 T F F 1 2 F 10
  • 38.
  • 39.
  • 40.
  • 41.
  • 42.
  • 43.
  • 44.