Created
April 21, 2013 14:04
-
-
Save udibagas/5429692 to your computer and use it in GitHub Desktop.
Bubble Sort Java
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
public class MainSorting { | |
public static void main(String[] args) { | |
// buat object Sorting dengan panjang array max = 10 | |
Sorting srt = new Sorting(10); | |
// Data siswa | |
Siswa1 sis1 = new Siswa1("Bagas", 60); | |
Siswa1 sis2 = new Siswa1("Udi", 80); | |
Siswa1 sis3 = new Siswa1("Sahsangka", 50); | |
Siswa1 sis4 = new Siswa1("Budi", 95); | |
Siswa1 sis5 = new Siswa1("Astanto", 60); | |
Siswa1 sis6 = new Siswa1("Tri", 65); | |
Siswa1 sis7 = new Siswa1("Hartono", 70); | |
Siswa1 sis8 = new Siswa1("Buhori", 75); | |
Siswa1 sis9 = new Siswa1("Dermawan", 85); | |
// masukkan ke dalam sorting | |
srt.add(sis1); | |
srt.add(sis2); | |
srt.add(sis3); | |
srt.add(sis4); | |
srt.add(sis5); | |
srt.add(sis6); | |
srt.add(sis7); | |
srt.add(sis8); | |
srt.add(sis9); | |
// lakukan sorting | |
srt.sort(); | |
// tampilkan data siswa yang telah di sorting | |
srt.display(); | |
} | |
} |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
public class Siswa1 { | |
public String nama; | |
public int nilai; | |
// constructor tanpa parameter | |
public Siswa1() { | |
} | |
// constructor, isi dengan nama dan nilai | |
public Siswa1(String nm, int nl) { | |
nama = nm; | |
nilai = nl; | |
} | |
// menampilkan data siswa | |
void display() { | |
System.out.println("Nama = " + nama + ", Nilai = " + nilai); | |
} | |
} |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
public class Sorting { | |
// yang akan diurutkan adalah class Siswa berdasarkan nilai | |
private Siswa1[] s; | |
// index array | |
private int idx; | |
// constructor, bukan object Sorting dengan membuat object Siswa sebanyak 'size' | |
Sorting(int size) { | |
s = new Siswa1[size]; | |
// index array Siswa1 kosong = -1 (index array dimulai dari 0) | |
idx = -1; | |
} | |
// tambahkan Siswa1 | |
void add(Siswa1 sis) { | |
// naikkan index | |
idx++; | |
// isi array 's' dengan 'sis' | |
s[idx] = sis; | |
} | |
// proses sorting | |
void sort() { | |
// looping sebanyak jumlah siswa yg dimasukkan | |
for (int i = 0; i <= idx; i++) { | |
// looping sebanyak jumlah siswa - 1 | |
// data terakhir tidak dibandingkan karena tidak ada pembandingnya | |
for (int j = 0; j < idx; j++) { | |
// jika nilai siswa lebih dari niai siswa selanjutnya tukar posisi | |
if (s[j].nilai > s[j+1].nilai) { | |
// tampung dulu di 'tmp' | |
Siswa1 tmp = s[j]; | |
// tukar posisi | |
s[j] = s[j+1]; | |
s[j+1] = tmp; | |
} | |
} | |
} | |
} | |
// menampilkan isi array | |
void display() | |
{ | |
// looping sebanyak jumlah siswa | |
for (int i = 0; i <= idx; i++) { | |
// panggil method display pada class Siswa1 | |
s[i].display(); | |
} | |
} | |
} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment