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