Untuk
mengimplementasikan algoritma insertion sort pada postingan ane yg ini menggunakan bahasa pemrograman C#,
gunakanlah syntax berikut ini :
using System;
using System.Text;
namespace tester
{
class Insertion
{
public void InsertionSort()
{
Console.Clear();
Console.WriteLine("Masukkan Banyak Elemen yang anda inginkan : ");
/* Deklarasi variabel untuk input jumlah elemen array yg akan digunakan */
string Input=Console.ReadLine();
int Elements;
if(int.TryParse(Input, out Elements))
{
Elements = Convert.ToInt32(Input);
}
else
{
Console.WriteLine("Maaf anda melakukan input yang salah, silahkan tekan enter untuk mengulang");
Console.ReadLine();
InsertionSort();
}
/* Deklarasi array yang akan digunakan untuk menampung angka-angka yang akan di sorting dan elemen array
berdasarkan input user (variabel Elements) */
int[] Angka = new int[Elements];
Console.WriteLine("----------------------------------------------------");
/* Metode untuk input angka yang akan disimpan pada masing-masing element di Array Angka */
for (int i = 0; i < Elements; i++)
{
Console.WriteLine("Silahkan masukkan angka untuk mengisi elemen " + i + ":");
string Input_Temp = Console.ReadLine();
int angka;
if(int.TryParse(Input_Temp, out angka))
{
Angka[i] = Convert.ToInt32(angka);
}
else
{
Console.WriteLine("Maaf anda melakukan input yang salah, silahkan tekan enter untuk mengulang");
Console.ReadLine();
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 */
Console.WriteLine("");
Console.WriteLine("Hasil Sorting nilai : ");
for (int i = 0; i < Elements; i++)
{
Console.WriteLine("Elemen" + i + ":");
Console.WriteLine(Angka[i]);
}
}
static void Main(string[] args)
{
Insertion I = new Insertion();
I.InsertionSort();
}
}
}
Pada baris 14 sampai
51 hanya syntax untuk menginput banyak element pada variabel Elements dan nilai
yang disimpan pada elemen-elemen yang ada pada array Angka. Sedangkan pada
baris 54 sampai 70 adalah syntax untuk
metode insertion sort.
Pada baris 54 terdapat for looping dengan kondisi varibel i
dengan nilai awal 1 dan selama i bernilai dibawah Elements
maka nilai i akan bertambah. Lalu pada baris 56 terdapat while looping
dengan kondisi selama nilai i lebih besar dari 0
maka while looping akan terus berjalan, dan didalam while looping terdapat if
dengan kondisi nilai pada index Angka[i-1] lebih besar dari nilai
pada index Angka[i] maka posisi nilai pada kedua index terebut akan
ditukar dan nilai i akan dikurangi 1 selain itu while looping akan di
break (dihentikan).
Dan berikut adalah demo dari implementasi insertion sort
dengan C# :
Sekian postingan dari ane semoga bermanfaat, jika ada yang salah mohon dikoreksi dan tolong dimaklumi
karena ane masih newbie :Peace:.
No comments:
Post a Comment