Ads 468x60px

Labels

Rabu, 11 Januari 2012

SEARCHING


SEARCHING STRAIT MAXMIN

2.1            DEFINISI SEARCHING STRAIT MAKSMIN
          Shearcing strait maksmin adalah program untuk mencari data atau nilai yang lebih besar atau lebih kecil dari data yang lain. Dalam program ini inputan berupa kumpulan data, maksutnya bahwa data yang dimasukkan lebih dari satu. Langkah-langkah dari proses hamper mirip yang berbeda hanya nilai yang dicari. Penggunaan operator (<, lebih kecil) dan (>, lebih besar) sering digunakan dalam proses ini. Operator diatas digunakan sebagai pembanding antara data pertama dan selanjutnya.

            Prose awal pada searching strait maksmin ini adalh inisial, elemen pertama dari suatu data disimpan dan diinisialkan terlebih dahulu lalu dijadikan sebagai pembanding pertama. Jika ada elemen yang bernilI lebih rendah atau lebih tinggi dari elemen pertama, maka elemen kedua inilah yang akan disimpan dan diinisialkan, yang selanjutnya akan dibandingkan dengan elemen data yang lain sampai elemen data ke-N.

            Pada proses ini juga ditandai dengan adanya proses looping atau pengulangan proses. Setelah melakukan eksekusi pada elemen data kedua lalu proses dilanjutkan dengan elemen selanjutnya dengan step atau langkah yang sama seperti pada elemen data yang kedua.


2.2            SEARCHING STRAIT MAKSIMUM
Untuk menjelaskan proses pencarian data terbesar atau data  maksimum dari sekelompok data, di bawah ini akan diberikan contohnya terlebih dahulu.
Jika diketahui sebuah sebuah larik data atau vector A yang memiliki 6 elemen data,sebagai berikut:
                        A         :           45        24        43        23        66        55
Untuk menemukan data maksimum dari vector A, dapat dilakukan dengan cara sebagai berikut. Mula-mula elemen pertama dalam A, yaitu 45 di aggap sebagai data maksimum. Selanjutnya 45  kita bandingkan dengan elemen data yang kedua, yaitu 24. Karena 45 lebih besar dari 24, maka data maksimumnya tetap, yaitu 45. Selanjutnya, 45 kita bandingkan   dengan elemen data yang ketiga yaitu 43. Harga data maksimum sebelumnya adalah lebih besar dari 43, sehingga data maksimumnya masih tetap, yaitu 45. Proses dilanjutkan untuk membandingkan kembali data maksimum sementara dengan data-data pada urutan selanjutnya secara berurutan hingga data pada urutan akhir. Ketika dibandingkan dengan data urutan yang ke-5, yaitu 66, ternyata 45 lebih kecil dari 66. Pada akhirnya setelah dibandingkan dengan keseluruhan data dalam vector A, data 66 merupakan data terbesar atau maksimum.

Secara ringkas, jika N menyatakan cacah elemen dalam vector yang diberi nama A, kemudian I menyatakan variable pencacah sekaligus berfungsi sebagai indeks untuk mengidentifikasi setiap elemen data dalam variable  A, sehingga elemn-elemen pada vector  A secara berurutan akan dapat diidentifikasi sebgai A[1], A[2], A[3], dan seterusnya hingga A[N]. untuk mendapatkan data maksimum dalam data dalam vector A, mula-mula A[1] dianggap sebagai nilai maksimum. Selanjutnya dibandingkan dengan data yang lain, jika data yang dibandingkan lebih besar dari data maksimum maka data maksimum diganti dengan data yang leboih besar. Proses tersebut terus berulang. Pada akhir prosedur seperti ini akan memberikan hasil berupa elemen data yang maksimum yang terdapat pada vector A.

Jika maksimum menyatakan variable untuk data maksimum yang akan dicari, maka flowchart untuk mencari data maksimum sebagaimana dijelaskan adalah:

 
2.3           MENCARI DATA MINIMUM


            Pasa kasus yang lain, jika diinginkan menccari data terkecil atau data minimum dari sekelompok data atau vector, pada dasarnya langkah-langkah yang dilakukan adalah sama dengan algoritma prosedur pencarian data maksimum sebagaiman dijelaskan sebelumnya. Perbedaannya adalah terletak pada langkah ke-4, yaitu pertukaran data akan dilakukan jika data pada ukuran berikutnya memiliki harga yang lebih rendah dari nilai sebelumnya. Pada vector A dalam contoh sebelumnya, nialai 23 adalah merupakan data minimum atau terkecil dari semua data pada vector A. jika minimum merupakan variable yang digunakan untuk menyimpan harga minimum yang akan dicari, maka algoritma prosedur untuk mencari nilai minimum adalah sebagai berikut:

 
Teknik Pencarian Maxmin Searching Dengan Teknik
Straitmaxmin
Menentukan / mencari elemen max & min. Pada Himpunan yang berbentuk array linear, waktu tempuh / time complexity yang digunakan untuk menyelesaikan pencarian hingga mendapatkan solusi yang optimal terbagi atas best case, average case, dan worst case
Algoritma untuk mencari elemen MaxMin :
Procedure STRAITMAXMIN(A,n,max,min)
Integer i,n
max  ! min  ! A(i)  
FOR i ! 2 To n DO
IF A(i) > max
Then max  ! A(i)
ELSE IF A(i) < min Then min ! A(i) ENDIF
ENDIF
REPEAT
END STRAITMAXMIN

1.      BEST CASE
·         Keadaan yang tercapai jika elemen pada himpunan a disusun secara increasing (menaik). Dengan perbandingan waktu n-1 kali satuan operasi

Contoh : terdapat himpunan A yang berisi 4 buah bilangan telah disusun secara increasing A = 2,4,5,10. Dengan A(1) = 2, A(2) = 4, A(3) = 5, A(4) = 10. Tentukan atau cari bilangan Max & Min serta jumlah operai perbandingan yang dilakukan

Penyelesian
untuk masalah tersebut dapat digunakan procedure STRAITMAXMIN yang menghasilkan bilangan min = 2 bilangan max = 10, operasi perbandingan mencari bilangan MaxMin dari himpunan tersebut = 3 kali operasi.
2.      WORST CASE
Terjadi jika elemen dalam himpunan disusun secara decreasing ( menurun ). Dengan Operasi perbandingan sebanyak 2 ( n-1) kali satuan operasi

Contoh :
Mencari elemen MaxMin dan jumlah Operasi perbandingan yang dilakukan terhadap himpunan A yang disusun decreasing.
A= { 80,21,6,-10}

Penyelesaian :
untuk masalah tersebut dapat digunakan procedure STRAITMAXMIN adalah elemen max = 80 dan elemen min = 10, operasi perbandingan untuk elemen MaxMin tersebut adalah 2(4-1) = 6 kali satuan operasi.

3.      AVERAGE CASE
Jika pencarian elemen MaxMin dilakukan pada elemen dalam himpunan yang tersusun secara acak ( tidak decreasing / tidak increasing )jumlah operasi. Perbandingan yang dilakukan adalah rata – rata waktu tempuh best case dan worst case yaitu ½[(n-1) + 2(n-1)]=(3n/2 – 1)kali

Contoh
Pada Himpunan A yang berisi {5,-4,9,7} dilakukan pencarian elemen max & min dengan menggunakan proses STRAIT MAXMIN. Berapa elemen maxmin yang didapat dan jumlah operasi perbandingan yang dilakukan.

Penyelesaian :
Elemen Max = 9, dan elemen min = -4
Jumlah operasi perbandingan adalah (3 *4/2-1)=5 kali satuan operasi