You are on page 1of 9

Program Coding Pengurutan Bubble (JAVA)

 Coding Program Bubble

class Bubble{

static void print(String s){

System.out.print(s);

static void display(int[] a){

for(int i=0;i<a.length;i++)

print(a[i]+" ");print("\n");

static void acak(int[] a){

for(int i=0;i<a.length;i++)

a[i]=(int)(100*Math.random());

static void tukar(int[] a,int i,int j){

int t=a[i];a[i]=a[j];a[j]=t;

static void urut(int[] a){

for(int i=1;i<a.length;i++)

if(a[i-1]>a[i])

tukar(a,i-1,i);

public static void main(String[] x){

long t1=System.nanoTime();

int N=10,a[]=new int[N];

acak(a);display(a);

urut(a);display(a);

long t2=System.nanoTime();

long t=(t2-t1);

Laporan Analisa Algoritma dan Pemrograman Page 1


print("\nwaktu: "+(t)+" nS\n");

t/=1000000;

print("waktu: "+(t)+" mS\n");

 Hasil Eksekusi Program Bubble

 Coding Program Bubble2

class Bubble2{

static void print(String s){

System.out.print(s);

static void display(int[] a){

for(int i=0;i<a.length;i++)

print(a[i]+" ");print("\n");

static void acak(int[] a){

for(int i=0;i<a.length;i++)

a[i]=(int)(100*Math.random());

static void tukar(int[] a,int i,int j){

Laporan Analisa Algoritma dan Pemrograman Page 2


int t=a[i];a[i]=a[j];a[j]=t;

static void urut(int[] a){

for(int j=0;j<a.length;j++)

for(int i=1;i<a.length-j;i++)

if(a[i-1]>a[1])

tukar(a,i-1,i);

public static void main(String[] x){

long t1=System.nanoTime();

int N=10,a[]=new int[N];

acak(a);display(a);

urut(a);display(a);

long t2=System.nanoTime();

long t=(t2-t1);

print("\nwaktu: "+(t)+" nS\n");

t/=1000000;

print("waktu: "+(t)+" mS\n");

 Hasil Eksekusi Program Bubble2

Laporan Analisa Algoritma dan Pemrograman Page 3


 Coding Program Geser

class Geser{

static void print(String s){

System.out.print(s);

static void display(int[] a){

for(int i=0;i<a.length;i++)

print(a[i]+" ");print("\n");

static void acak(int[] a){

for(int i=0;i<a.length;i++)

a[i]=(int)(100*Math.random());

static void tukar(int[] a,int i,int j){

int t=a[i];a[i]=a[j];a[j]=t;

static void geser(int[] a){

for(int i=1;i<a.length;i++)

Laporan Analisa Algoritma dan Pemrograman Page 4


if(a[i-1]>a[i])

tukar(a,i-1,i);

public static void main(String[] x){

long t1=System.nanoTime();

int N=10,a[]=new int[N],m=0,j=-1;

acak(a);display(a);

geser(a);

print("max: "+a[N-1]+"\n");

long t2=System.nanoTime();

long t=(t2-t1);

print("\nwaktu: "+(t)+" nS\n");

t/=1000000;

print("waktu: "+(t)+" mS\n");

 Hasil Eksekusi Program Geser

Laporan Analisa Algoritma dan Pemrograman Page 5


 Coding Program Max

class Max{

static void print(String s){

System.out.print(s);

static void display(int[] a){

for(int i=0;i<a.length;i++)

print(a[i]+" ");print("\n");

static void acak(int[] a){

for(int i=0;i<a.length;i++)

a[i]=(int)(100*Math.random());

public static void main(String[] x){

long t1=System.nanoTime();

int N=10,a[]=new int[N],m=0,j=-1;

acak(a);display(a);

for(int i=0;i<N;i++)

if(a[i]>m){

m=a[i];j=i;

Laporan Analisa Algoritma dan Pemrograman Page 6


}

print("max:"+m+", pos:"+(j+1)+"\n");

long t2=System.nanoTime();

long t=(t2-t1);

print("\nwaktu: "+(t)+" nS\n");

t/=1000000;

print("waktu: "+(t)+" mS\n");

 Hasil Eksekusi Program Max

2. Bandingkan kedua program di atas untuk 100,1000&10000. Sebelum prosedur display dinonatifkan
agar layar tidak penuh dengan angka pakai komen : //di depannya.

Laporan Analisa Algoritma dan Pemrograman Page 7


Perbandingan antara Bubble dan Geser

 Perbedaan Bubble dan Geser N = 100

N = 1000

N = 1000

 Hasil Eksekuso Program Bubble

N = 100

 Hasil Eksekusi Program Geser

N = 100

N = 1000

N = 10000

N = 1000

 Hasil Eksekusi Program Bubble2

Laporan Analisa Algoritma dan Pemrograman Page 8


10000

Laporan Analisa Algoritma dan Pemrograman Page 9

You might also like