Programming
529

Simple Selection Sort in C and C++ programs






  03-Nov-2020 12:55:58



Kasus 

Buatlah program sorting Dinamis menggunakan metode selection sort atau insertion sort (pilih salah satu) untuk mengurutkan Nilai mahasiswa dengan banyak elemen dinamis (lebih dari 3), kemudian tampilkan data sebelum dan sesudah di urutkan. lalu jelaskan secara singkat dari proses pengurutannya... [+] nilai yang di inputkan bebas [+] Di urutkan secara ascending (Nilai terkecil ke Besar)

Source code dan Logika 

Apa itu sorting ?

Sorting adalah mengurutkan data atau sebuah nilai yang dulunya acak, menjadi berurutan

Logika

Deklarasi var

a : array [1..100] of integer

i, j, n, min, temp : integer

Algoritma :

Output(Masukkan banyak data : )

Input(n)

i traversal [1..n]

Output(Masukkan data ke-,i,: );

Input(ai)

i traversal [1..n-1]

min <= i

j traversal [i+1..n]

if (aj < amin) then

min <= j

temp <= amin

amin := ai

ai := temp

i traversal [1..n]

Output(ai,’ ‘)

Source Code 

#include <iostream>

#include <conio.h>


using namespace std;


int main()

{

    int a[100];

    int i,j,n,min,temp;


    cout <<"Banyak Data : ";

    cin  >> n;

    for (i=1;i<=n;i++)

    {

        cout <<"Data ke - " << i <<": ";

        cin  >> a[i];

    }


//=== sebelum urut ===

    cout <<"Data sebelum urut\n";

    for (i=1;i<=n;i++)

    {

        cout << a[i] <<" ";

    }

    cout <<"\n";


//=== Proses selection sort ===

    for (i=1;i<=n-1;i++)

    {

        min=i;

        for (j=i+1;j<=n;j++)

        {

            if (a[j]<a[min])

            {

                 min=j;

                 temp=a[min];

                 a[min]=a[i];

                 a[i]=temp;


            }

        }

    }


//=== menampilkan hasil sorting ===

    cout <<"Data Setelah urut\n";

    for (i=1;i<=n;i++)

    {

        cout << a[i] << " ";

    }

    getch();

}

Penjelasan

Prinsip kerja selection sort adalah

Cari nilai ekstrim (maksimum/minimum) pada array A (misalkan array A adalah

array yang ingin diurutkan) dan tukar dengan indeks pertama, lalu isolasi indeks

pertama. Kemudian tentukan nilai ekstrim selanjutnya dan tukarkan dengan indeks kedua,

lalu isolasi indeks kedua. Terus ulangi langkah tersebut hingga data terakhir.

pertama buat header, iostream dll

Kedua using namespace std supaya tidak ada cout dan cin

Ketiga deklarasi var

Ke empat input data

Ke lima loop, hasil inputan di atas, lalu input data baru sesuai. Dengan batas loop yang tadi di awal input

Sete;ahnya akan ada, data sebelum di urutkan, dengan cara loop jadi si a var penampung nilai tadi akan di outputkan, dengan hasil input yg sudah di isi tadi

Ke enam proses selection, pada dasarnya dengan cara nested loop. Kita sudah jelaskan apa itu nested jadi langsung gas saja. Setelah itu ada percabangan atau if. Jika var [j] < a[min], maka akan di usut.

Langsung saja untuk mempersingkat dan mengehamat waktu. Simplenya seperti ini

Input(ai)

i traversal [1..n-1]

min <= i

j traversal [i+1..n]

if (aj < amin) then

min <= j

temp <= amin

amin := ai

ai := temp

i traversal [1..n]

Output(ai,’ ‘)


Terakhir tinggal nampilkan hasil sorting dengan cara loop. Jika ingin tambah searching, bisa pakai loop, hasil tadi kita fillterasi atau untuk menemukan index array dari value nilai tersebut

 

Ouput 




DISCUSSION



03-Nov-2020 15:44:19

Wkwkw pelajaran dulu gw nih kwkw gampang bet




Reply


04-Nov-2020 00:17:51



Hahaha


Reply

Login for comment and discussion.
Login Here
Sponsored

Oppss... No sponsors yet

Popular Posts
Complete Basic Course in Kali...
Djie sam soe Djie sam soe
Linux
7724
2
Top

Gps Tracker Seccodeid Free Too...
Djie sam soe Djie sam soe
General
5326
164
Top

Free Proxy List
Sandidi Sandidi
Networking
2961
3
Top

Mass Reverse IP Unlimited
ImamSy ImamSy
Hacking
2177
11
Top

Report McAfee Antivirus Hurrri...
Indrasp Indrasp
Windows
1629
93
Top

Related Post

Youtube Video

Subscribe