h>
int main ()
{
int arr[100],i,n, step, temp;
//ask user for number of elements to be sorted
printf("enter the number of elements to be sorted: ");
scanf("%d", &arr[i]); //input elements if the array
for(i=0; i < n; i++);
return 0;
}
{
printf("enter element no. %d:", i+1);
scanf("%d", &arr[i]);
}
//call the functionbubblesort bubbleSort(arr,
n);
Materi Insertionsort
#include<stdio.h>
int main()
{
int i,j,s, temp, a[20];
for(i=1; i<s;i++){
temp=a[i];
j=i-1;
while((temp<a[j])&&(j>=0)){
a[j+1]=a[j];
j=j-1;
}
a[j+1]=temp;
}
printf("After sorting : ");
for(i=0;i<s;i++)
printf("%d", a[i]);
return 0;
}
II. Tugas
Bubblesort array integer Index 10
#include <stdio.h>
using namespace std;
int main()
{
int L[10],temp,i,j,n;
printf("enter:");
scanf("%d",&n);
printf("pengurutan berdasarkan Bublle sort \nmasukkan %d elements: \n",n);
for(i=0;i<n;i++){
scanf("%d",&L[i]);}
for(i=0;i<n;i++){printf("%d ",L[i]);}
for(i=n-2;i>=0;i--){
/*5 3 1 2 ===> 3 5 1 2, 3 1 5 2, 3 1 2 5 // 1 3 2 5, 1 2 3 5 // 1 2 3 5*/
for(j=0;j<=i;j++){ if(L[j]>L[j+1]){ temp=L[j];
L[j]=L[j+1];
L[j+1]=temp;
}
}
}
printf("\nsetelah sorting: "); for(i=0;i<n;i++)
{printf("%d ",L[i]);} printf("\n");
}
Insertionsort array integer index 10 III. Tugas
#include "stdio.h"
int main()
{
int L[10],temp,i,j,n=10;
printf("enter:");
scanf("%d",&n);
printf("pengurutan berdasarkan Insertion sortnmasukkan
\ %d elements: \n",n);
for(i=0;i<n;i++){
scanf("%d",&L[i]);}
for(i=0;i<n;i++){printf("%d ",L[i]);}
for(i=1;i<n;i++){
Kekurangan :
• Metode kurang efisien jika datanya cukup banyak. Pengulangannya tetap sama
jumlahnya walaupun data sudah cukup terurut, karena disebabkan membandingkan
semua data untuk menentukan posisinya.
Insertionsort :
Kelebihan :
Kekurangan :
• Banyaknya operasi yang diperlukan dalam mencari posisi yang tept untuk elemen
larik
• Untuk larik yang jumlahnya besar tidak praktis.
• Jika list terurut terbalik sehingga setiap eksekusi dari perintah harus memindai, dan
mengganti seluruh bagian sebelum menyisipkan elemen berikutnya.