Senin, 21 Desember 2015

TUGAS 12 (STUKTUR DATA PROGRAM)

1.   Buatlah satu contoh tentang insertion sort
Jawab :
      




2.   Apa perbedaan exchange sort dan bubble sort
Jawab :
dalam hal bagaimana membandingkan antar elemen-elemennya :
•         Exchange sort membandingkan suatu elemen dengan elemen-elemen lainnya dalam array tersebut, dan melakukan pertukaran elemen jika perlu.  Jadi ada elemen yang selalu menjadi elemen pusat (pivot).
•         Sedangkan Bubble sort akan membandingkan elemen pertama/terakhir dengan elemen sebelumnya/sesudahnya, kemudian elemen tersebut itu akan menjadi pusat (pivot) untuk dibandingkan dengan elemen sebelumnya/sesudahnya lagi, begitu seterusnya

3.   buatlah lima contoh tentang metode pengurutan data
Jawab :
1)   Pengurutan berdasarkan perbandingan (comparison-based sorting)
•         Bubble sort, exchange sort
2)   Pengurutan berdasarkan prioritas (priority queue sorting method)
•         Selection sort, heap sort (menggunakan tree)
3)   Pengurutan berdasarkan penyisipan dan penjagaan terurut (insert and keep sorted method)
•         Insertion sort, tree sort
4)   Pengurutan berdasarkan pembagian dan penguasaan (devide and conquer method)
•         Quick sort, merge sort
5)   Pengurutan berkurang menurun (diminishing increment sort method)
•         Shell sort (pengembangan insertion)


4.   Apa yang dimaksud dengan pengurutan (sorting)
Jawab :
adalah proses menyusun kembali data yang sebelumnya telah disusun dengan suatu pola tertentu, sehingga tersusun secara teratur menurut aturan tertentu.

5.   Buatlah contoh program selection sort
Jawab :
#include <iostream.h>
#include <conio.h>
#include <stdio.h>
#include <iomanip.h>
main()
{
int x[5];
int i;
int temp;
int minindex;
int j;

clrscr();
cout<<" >> Welcome To The Program Selection Sort << \n" <<endl;
cout<<"masukkan nilai x :\n";
for(i=0; i<5; i++)
{
cout<<"x["<<i<<"] = ";cin>>x[i];
}
cout<<"\n data sebelum di sort :";
for(i=0; i<5;i++)
{
cout<<setw(4)<<x[i];
}
for(i=0; i<5-1; i++) //perulangan iterasi
{
minindex=i;
for(j=i+1; j<5; j++) //perulangan membandingkan data
{
if(x[minindex]>x[j])
{
minindex=j;
}
}
temp=x[i];
x[i]=x[minindex];
x[minindex]=temp;
}
cout<<"\n\nData setelah di sort :";
for(i=0; i<5; i++)
{
cout<<setw(4)<<x[i];
}
                           
getch();
}



Tidak ada komentar:

Posting Komentar