programming
204

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
POST NEW DISCUSSION
Popular Posts
Gps Tracker Seccodeid Free Too...
Bayu aji Bayu aji
General
1307
108
Top

Mass Reverse IP Unlimited
ImamSy ImamSy
Hacking
993
10
Top

Free Proxy List
Sandidi Sandidi
Networking
840
3
Top

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

GHunt OSINT Tools - Investiga...
Sandidi Sandidi
Tools Hacking
683
3
Top

Related Post
Subscribe

Subscribe free now for latest posts