Untuk
mengimplementasikan algoritma Insertion sort pada postingan ane yg ini menggunakan
bahasa pemrograman Java, gunakanlah syntax berikut ini :
import java.io.*;
import java.util.Scanner;
public class Insertion
{
public static void insertionSort()
{
try
{
int elements;
Scanner sc = new Scanner(System.in);
System.out.println("Silahkan masukkan elemen yang diinginkan : ");
if(sc.hasNextInt())
{
elements = sc.nextInt();
int[] angka = new int[elements];
System.out.println("----------------------------------------------------");
for(int i=0; i < elements; i++)
{
System.out.println("Silahkan masukan nilai untuk elemen " + i + ":");
if(sc.hasNextInt())
{
angka[i] = sc.nextInt();
}
else
{
System.out.println("Maaf anda melakukan input yang salah, silahkan ulangi lagi");
insertionSort();
}
}
/* Metode untuk Insertion Sort */
for(int i=1; i < elements; i++)
{
while(i>0)
{
if(angka[i-1] > angka[i])
{
int temp = angka[i-1];
angka[i-1] = angka[i];
angka[i] = temp;
i--;
}
else
{
break;
}
}
}
/* Menampilkan hasil sorting */
System.out.println("----------------------------------------------------");
System.out.println("Hasil sorting adalah :");
for(int i=0; i < elements; i++)
{
System.out.println("Index " + i + ":" + "\t" + angka[i]);
}
System.out.println("Apakah anda ingin melakukan sorting lagi : (y/n)");
String input;
Scanner inputText = new Scanner(System.in);
input = inputText.nextLine();
if((input.equals("y")) || (input.equals("Y")))
{
insertionSort();
}
else
{
System.exit(0);
}
}
else
{
System.out.println("Maaf anda melakukan input yang salah, silahkan ulangi lagi");
insertionSort();
}
}
catch(Exception e)
{
e.printStackTrace();
}
}
public static void main(String[] args)
{
insertionSort();
}
}
Di syntax ini pada
baris 10 sampai 32 adalah syntax untuk mendeklarasikan array Angka dan
menginput nilai untuk elemen-elemen yang berada di array Angka, lalu pada baris
35 sampai 51 adalah syntax untuk metode algoritma Insertion Sort.
Pada
baris 35 terdapat for looping dengan kondisi i=1 dan selama i
lebih kecil dari elements maka nilai i akan bertambah 1, lalu di baris 37
terdapata while looping dengan kondisi selama i lebih besar dari 0 maka syntax
akan terus berulang. Di baris 39 terdapat if dengan kondisi jika angka[i-1]
> angka[i] maka nilai pada 2 index tersebut akan bertukar tempat.
Dan berikut adalah hasil dari implementasi algoritma Insertion Sort dengan Java
:
Sekian postingan dari ane, semoga bermanfaat jika ada kesalahan mohon dikorekasi dan dimaklumi ya gan :Peace:
No comments:
Post a Comment