Bubble Sort Exchange Sort Bahasa Pemrograman JAVA

Properti Objek Greedy by i w i p i p i w i Weight Profit Density Solusi Optimal 1 3 30 10 1 1 1 1 2 2 25 12,5 1 1 1 1 3 5 20 4 Total Bobot 5 5 5 5 Total Keuntungan 55 55 55 55 Tabel 2.1 Contoh Solusi menggunakan Algoritma Greedy Dari tabel diatas, algoritma greedy dengan ketiga strategi yang ada menghasilkan solusi yang optimal yaitu X = {1,1,0}. Artinya objek ke-1 dan ke-2 dimasukkan ke dalam knapsack, sedangkan objek ke-3 tidak dimasukkan.

2.4 Bubble Sort Exchange Sort

Metode pengurutan ini merupakan metode yang paling umum dikenal dalam dunia pemrograman. Kelebihan metode ini ada pada kemudahan dalam membuat programnya. Walaupun semua metode yang digunakan akhirnya harus mempertimbangkan tingkat efisiensinya. Ide dasar metode bubble sort adalah melewatkan data dalam larik beberapa kali. Setiap melewati larik, dilakukan perbandingan setiap elemen sesudahnya x[i] dengan x[i+1] dan dilakukan penukaran antara kedua elemen tersebut bila tidak terurut. Perhatikan contoh berikut : 25 57 48 37 12 92 86 33 Hasil iterasi pembadingan pertama akan menghasilkan : x[0] dengan x[1] 25 dengan 57 Tidak berubah x[1] dengan x[2] 57 dengan 48 Ditukar x[2] dengan x[3] 57 dengan 37 Ditukar x[3] dengan x[4] 57 dengan 12 Ditukar x[4] dengan x[5] 57 dengan 92 Tidak berubah x[5] dengan x[6] 92 dengan 86 Ditukar x[6] dengan x[7] 92 dengan 33 Ditukar Tabel 2.2 Iterasi Pertama Bubble Sort Hasil perbandingan pertama, komponen terbesar 92 sudah pada posisi yang benar. Secara umum, x[n-iterasi] akan ada pada posisi yang benar setelah iterasi ke iterasi. Metode ini disebut bubble sort karena setiap elemen lambat seperti gelembung untuk sampai ke posisi yang benar. Setelah pembandingan kedua, larik yang terbentuk : 25 37 12 48 57 33 86 92 Perhatikan angka 86 menempati posisi kedua tertinggi. Setiap iterasi menempatkan setiap elemen larik ke tempat yang benar. Untuk mengurutkan n elemen larik, iterasi yang dibutuhkan tidak lebih dari n-1 iterasi. Iterasi lengkap untuk pengurutan bubble sort : 25 57 48 37 12 92 86 33 Iterasi 1 25 48 37 12 57 86 22 92 Iterasi 2 25 37 12 48 57 33 86 92 Iterasi 3 25 12 37 48 33 57 86 92 Iterasi 4 12 25 37 33 48 57 86 92 Iterasi 5 12 25 33 37 48 57 86 92 Iterasi 6 12 25 33 37 48 57 86 92 Iterasi 7 12 25 33 37 48 57 86 92 Tabel 2.3 Iterasi Lengkap Bubble Sort Implementasi algoritma bubble sort dalam suatu method :

2.5 Bahasa Pemrograman JAVA

void BubbleSortint[] data{ int temp; forint i=1; idata.length; i++{ forint j=0; jdata.length-1; j++{ ifdata[j]data[j+1]{ temp=data[j]; data[j]=data[j+1]; data[j+1]=temp; } } } } Java adalah bahasa pemrograman serbaguna yang dapat digunakan untuk membuat program sebagaimana Anda membuatnya dengan bahasa Pascal atau C++. Java dikembangkan oleh Sun Microsystem pada Agustus 1991, dengan nama semula Oak. Konon Oak adalah pohon semacam jati yang terlihat dari jendela tempat pembuatannya, James Gosling, bekerja. Ada yang mengatakan bahwa Oak adalah singkatan dari “Object Application Kernel”, tetapi ada yang menyatakan hal itu muncul setelah nama Oak diberikan. Pada Januari 1995, karena nama Oak dianggap kurang komersial, maka diganti dengan Java. Java merupakan hasil perpaduan sifat dari sejumlah bahasa pemrograman, yaitu C, C++, Object-C, SmallTalk, dan Common LISP. Selain itu Java juga dilengkapi dengan unsur keamanan. Yang tak kalah penting adalah bahwa Java menambahkan paradigma pemrograman yang sederhana. Java memiliki beberapa keunggulan, diantaranya Hermawan, 2004 : 1. Java berorientasi pada objek Dalam memecahkan masalah, Java membagi program menjadi objek- objek, kemudian memodelkan sifat dan tingkah laku masing-masing. Selanjutnya, Java menentukan dan mengatur interaksi antara objek yang satu dengan yang lain. 2. Java bersifat terdistribusi Pada dekade awal perkembangan PC Personal Computer, komputer hanya bersifat sebagai workstation tunggal, tidak terhubung satu sama lain. Saat ini, sistem komputerisasi cenderung terdistribusi, mulai dari workstation client, e-mail server, database server, web server, proxy server, dan sebagainya. 3. Java bersifat multiplatform Java dapat diterjemahkan oleh Java Interpreter pada berbagai sistem operasi. Ketidaktergantungan terhadap platform sering dinyatakan dengan istilah portabilitas. Tingkat portabilitas Java tidak hanya sebatas pada program sumber source code, melainkan juga pada tingkat kode biner yang disebut bytecode yang bisa dijalankan pada berbagai sistem operasi karena kode ini berbeda dengan kode mesin.

BAB III ANALISA DAN PERANCANGAN SISTEM