Hai guys..masih semangat ngoding? yah harus semangat dong... :) langsung aja kali ini aku posting pengertian dan contoh insertion sort dalam pemograman c++.
INSERTION SORT
Insertion sort adalah algoritma sorting lebih cepat dan lebih
ditingkatkan dari pilihan semacam.
Dalam seleksi mengurutkan iterates algoritma melalui semua data
melalui setiap lulus apakah itu sudah diurutkan atau tidak.
Namun, insertion sort bekerja secara berbeda, bukan
iterasi melalui semua data setelah setiap melewati algoritma
hanya melintasi data yang dibutuhkan untuk sampai segmen yang
sedang diurutkan diurutkan. Sekali lagi ada dua loop yang dibutuhkan
oleh insertion sort dan karena dua variabel utama, yang dalam hal ini diberi nama 'i' dan 'j'.
Variabel 'i' dan 'j' dimulai pada indeks yang sama setelah setiap lulus dari loop pertama,
loop kedua hanya mengeksekusi jika variabel 'j' lebih besar maka indeks 0 DAN
arr [j] <arr [j - 1].
Dengan kata lain, jika 'j' belum mencapai akhir dari data dan nilai indeks
di mana 'j' adalah di yaitu lebih kecil dari nilai indeks di sebelah kiri 'j',
akhirnya 'j' adalah dikurangi.
Selama dua kondisi ini terpenuhi dalam loop kedua akan tetap mengeksekusi,
ini adalah apa yang membuat insertion sort terpisah dari pilihan semacam.
Hanya data yang perlu diselesaikan adalah diurutkan.
Seperti biasa representasi visual membantu.
.
penjelasan menggunakan 5 kaidah :
1. Mengerti masalah :
Mencari bilangan terkecil ke yang terbesar
2. Menentukan input dan output nya :
input = 5 2 4 6 1 3
output = 1 2 3 4 5 6
3. Menyusun Algoritma dengan Flowchart :
contoh program insertion sort menggunakan c++ :
#include <iostream>
#include <conio.h>
using namespace std ;
int data[10],data2[10];
int n;
void tukar(int a, int b)
{
int t;
t = data[b];
data[b] = data[a];
data[a] = t;
}
void insertion_sort()
{
int temp,i,j;
for(i=1;i<=n;i++)
{
temp = data[i];
j = i -1;
while(data[j]>temp && j>=0)
{
data[j+1] = data[j];
j--;
}
data[j+1] = temp;
}
}
int main()
{
cout<<"\t\t\t===PROGRAM INSERTION
SORT===\n\n"<<endl;
//Input Data
cout<<"Masukkan Jumlah Data : ";
cin>>n;
cout<<"\n";
for(int i=1;i<=n;i++)
{
cout<<"Masukkan data ke
"<<i<<" : ";
cin>>data[i];
data2[i]=data[i];
}
insertion_sort();
cout<<"\n\n";
//tampilkan data
cout<<"Data Setelah di Sort : ";
for(int i=1; i<=n; i++)
{
cout<<" "<<data[i];
}
cout<<"\n\nSorting Selesai";
getch();
}
contoh pengguna'an pada reptor :
Insertion
sort sangat mirip dengan selection sort. Seperti dalam pemilihan semacam,
setelah ke melewati array, elemen ke pertama adalah dalam rangka diurutkan.
Untuk pilihan semacam ini adalah ke elemen terkecil, sementara di insertion
sort mereka pun elemen ke pertama berada di array disortir. Keuntungan
insertion sort adalah bahwa hal itu hanya memindai sebanyak elemen yang
diperlukan untuk menentukan lokasi yang benar dari elemen ke + 1, sedangkan
pilihan semacam harus memindai semua elemen yang tersisa untuk menemukan elemen
terkecil mutlak.
Sekian postingan saya semoga bermanfa'an untuk para pembaca, mohon maaf jika masih ada kekurangan karna saya masih dalam tahap pembelajaran.
Kalian juga bisa melihat materi lainnya dibawa sini :
Sorting Data Secara Manual Dengan Metode Bubble Sort AYO KLIK
Sorting Data Secara Manual Dengan Metode Selection Sort AYO KLIK
Kalian juga bisa melihat materi lainnya dibawa sini :
Sorting Data Secara Manual Dengan Metode Bubble Sort AYO KLIK
Sorting Data Secara Manual Dengan Metode Selection Sort AYO KLIK
Wasalam.
Tidak ada komentar:
Posting Komentar