Anda di halaman 1dari 11

ALGORITMA SORTING

HALAMAN COVER

DOSEN PEMBIMBING

Pak.

DISUSUN OLEH:

Komang Deva Suparsa (2220005)

M. Salman Alfatih(2220006)

Komang Adi Dananjaya (2220007)

Putu Ayu Gayatri (2220011)

POLITEKNIK GANESHA GURU


PEMROGRAMAN VISUAL
2022/2023
KATA PENGANTAR

Puji syukur penulis panjatkan ke hadirat Tuhan Yang Maha Esa, atas berkat, dan
rahmat-Nya sehingga penulis dapat menyelesaikan tugas algoritma sorting dalam
Penerapannya untuk melengkapi beban kerja dosen. Laporan ini penulis susun berdasarkan
hasil analisa yang penulis lakukan dengan fokus kepada teori dan praktik yang ada di dalam
algoritma sorting.

Pada kesempatan ini, penulis pun tidak lupa menyampaikan banyak terima kasih
kepada semua pihak yang telah terlibat dalam membuat tulisan ini. Penulis berterima kasih
pula atas setiap bantuan, dorongan, dan arahan yang diberikan oleh setiap pihak dalam
pengerjaan tulisan ini. Kami menyadari banyak kekurangan yang terdapat dalam tulisan ini.
Kami sangat menerima semua kritik, saran, dan masukkan yang berguna demi kebaikan
bersama. Semoga makalah ini dapat bermanfaat bagi semua pihak yang membacanya.

Singaraja, 13 Desember 2023


DAFTAR ISI

HALAMAN COVER..................................................................................................................i
KATA PENGANTAR.................................................................................................................ii
DAFTAR ISI.............................................................................................................................iii
BAB I PENDAHULUAN..........................................................................................................1
1.1 Latar Belakang.............................................................................................................1
1.2 Rumusan Masalah.......................................................................................................3
1.3 Tujuan..........................................................................................................................3
BAB II PEMBAHASAN...........................................................................................................4
2.1 Definisi Seletion Sort..................................................................................................4
2.2 Algoritma Selection Sort.............................................................................................5
BAB III PENUTUP....................................................................................................................7
3.1 Kesimpulan..................................................................................................................7
3.2 Saran............................................................................................................................7
DAFTAR PUSTAKA.................................................................................................................8
BAB I
PENDAHULUAN

1.1 Latar Belakang

Algoritma sorting, khususnya dalam konteks selection sort, berkaitan dengan kebutuhan
manusia untuk mengurutkan data atau elemen-elemen dalam suatu urutan tertentu. Sorting
menjadi operasi yang umum digunakan dalam pemrograman dan ilmu komputer karena
seringkali kita perlu menyusun data dalam urutan yang teratur untuk mempermudah
pencarian, analisis, dan pemrosesan data.

Berikut adalah latar belakang umum mengenai algoritma sorting dan penerapan selection
sort:

Kompleksitas Waktu:

 Algoritma sorting memiliki peran besar dalam kompleksitas waktu program.


 Beberapa algoritma sorting lebih efisien daripada yang lain tergantung pada kasus
penggunaan tertentu.

Selection Sort:

 Selection sort adalah salah satu algoritma sorting yang sederhana namun cukup
lambat untuk jumlah data yang besar.
 Algoritma ini bekerja dengan mencari elemen terkecil (atau terbesar) dari data dan
menukar posisinya dengan elemen pertama.
 Proses ini diulangi untuk elemen berikutnya hingga seluruh data terurut.

Kelebihan dan Kekurangan Selection Sort:

 Kelebihan:
1. Sederhana dan mudah diimplementasikan.
2. Membutuhkan sedikit ruang penyimpanan tambahan.
 Kekurangan:
1. Kurang efisien untuk jumlah data yang besar.
2. Kompleksitas waktu terbaik dan terburuk sama-sama O(n^2).

1
Penerapan dalam Pemrograman:

Algoritma sorting, termasuk selection sort, umumnya digunakan dalam berbagai aplikasi
pemrograman, seperti database, aplikasi pengolahan data, dan algoritma pencarian.
Penting untuk diingat bahwa terdapat berbagai algoritma sorting lainnya (seperti bubble
sort, merge sort, quicksort) dengan karakteristik dan keefisienan yang berbeda.
Pemilihan algoritma tergantung pada kebutuhan spesifik dan karakteristik data yang
akan diurutkan.
1.2 Rumusan Masalah
Berdasarkan latar belakang di atas terdapat beberapa permasalah sebagai berikut :

1. Apakah yang dimaksud dengan Selection Sort ?


2. Bagaimanakah Algoritma Selection Sort ?

1.3 Tujuan
1. Mengurutkan data memungkinkan kita untuk dengan cepat menemukan elemen
tertentu.
2. Pencarian efisien dilakukan pada data yang sudah terurut.
3. Analisis dan pemrosesan data menjadi lebih mudah ketika data sudah terorganisir.
BAB II
PEMBAHASAN

2.1 Definisi Seletion Sort


Selection Sort adalah metode sederhana untuk mengurutkan data dalam suatu array
atau daftar. Konsepnya adalah dengan mencari elemen terkecil dalam array dan menukarnya
dengan elemen pertama. Kemudian, mencari elemen terkecil dalam sisa array yang belum
diurutkan dan menukarnya dengan elemen kedua, dan begitu seterusnya. Proses ini diulang
hingga seluruh array diurutkan secara berurutan.

Pengurutan Data: Algoritma Selection Sort berfungsi untuk mengurutkan data dalam
suatu array atau daftar. Dengan cara mencari elemen terkecil dalam sisa array yang belum
diurutkan dan menukarnya dengan elemen pertama, algoritma ini dapat mengurutkan seluruh
array dengan tepat dan efisien.

Sederhana dan Mudah Dipahami: Algoritma Selection Sort merupakan salah satu
algoritma pengurutan yang paling sederhana dan mudah dipahami. Implementasinya dapat
dilakukan dengan kode yang relatif singkat dan tidak rumit, sehingga algoritma ini dapat
diaplikasikan dengan mudah dalam berbagai bahasa pemrograman.

Performa untuk Array Kecil: Algoritma Selection Sort bekerja lebih baik untuk array
dengan jumlah elemen yang kecil atau sedang. Ketika array memiliki jumlah elemen yang
sangat besar, algoritma ini cenderung menjadi lebih lambat karena membutuhkan lebih
banyak perbandingan dan pertukaran elemen.

Metode Pengurutan Lainnya: Meskipun algoritma Selection Sort berguna untuk array
kecil, pada array besar lebih disarankan untuk menggunakan algoritma pengurutan lain yang
lebih efisien seperti Merge Sort, Quick Sort, atau Heap Sort, yang memiliki kompleksitas
waktu yang lebih baik pada array dengan jumlah elemen yang besar

Namun, perlu diingat bahwa algoritma ini tidak cocok untuk set data dengan jumlah
besar karena kompleksitas dari algoritma ini adalah O(n2), di mana n adalah jumlah item
2.2 Algoritma Selection Sort

Algoritma Selection Sort adalah metode pengurutan sederhana yang bekerja dengan
mencari elemen terkecil dalam array dan menukarnya dengan elemen pertama. Proses ini
diulang untuk elemen berikutnya hingga seluruh array diurutkan secara berurutan.

Berikut adalah langkah-langkah lebih lengkap tentang cara kerja algoritma Selection Sort:

1. Mulai dengan array data yang akan diurutkan.


2. Tentukan indeks pertama sebagai posisi awal untuk mencari elemen terkecil dalam
array. Inisialisasi indeks pertama dengan nilai 0.
3. Cari elemen terkecil dalam sisa array yang belum diurutkan. Untuk melakukan ini,
lakukan langkah-langkah berikut:
4. Bandingkan elemen pada indeks pertama (posisi awal pencarian) dengan setiap
elemen dalam sisa array, mulai dari indeks pertama + 1 hingga indeks terakhir.
5. Jika elemen yang dibandingkan lebih kecil dari elemen pada indeks pertama, catat
indeks elemen yang lebih kecil tersebut sebagai indeks terkecil.
6. Setelah mencari seluruh elemen, tukar elemen terkecil dengan elemen pada indeks
pertama.
7. Pindahkan indeks penanda ke elemen kedua dalam array, dan lakukan langkah 3
kembali untuk mencari elemen terkecil dalam sisa array yang belum diurutkan.
8. Ulangi langkah 3 dan 4 untuk seluruh elemen dalam array hingga seluruh array
diurutkan secara berurutan.

Berikut adalah ilustrasi cara kerja algoritma Selection Sort dengan array [64, 34, 25, 12, 22,
11, 90]:

1. Iterasi 1: Cari elemen terkecil (11) dan tukar dengan elemen pertama (64). Array
menjadi [11, 34, 25, 12, 22, 64, 90].
2. Iterasi 2: Cari elemen terkecil (12) dalam sisa array dan tukar dengan elemen
kedua (34). Array menjadi [11, 12, 25, 34, 22, 64, 90].
3. Iterasi 3: Cari elemen terkecil (22) dalam sisa array dan tukar dengan elemen
ketiga (25). Array menjadi [11, 12, 22, 34, 25, 64, 90].
4. Iterasi 4: Cari elemen terkecil (25) dalam sisa array dan tukar dengan elemen
keempat (34). Array menjadi [11, 12, 22, 25, 34, 64, 90].
5. Iterasi 5: Cari elemen terkecil (34) dalam sisa array dan tukar dengan elemen
kelima (34) (tidak ada tukar karena elemen terkecil sudah berada pada posisi yang
tepat).
6. Iterasi 6: Cari elemen terkecil (64) dalam sisa array dan tukar dengan elemen
keenam (90). Array menjadi [11, 12, 22, 25, 34, 64, 90].
7. Iterasi 7: Array sudah terurut dan algoritma Selection Sort selesai.
BAB III
PENUTUP
3.1 Kesimpulan
Algoritma Selection Sort adalah metode sederhana namun efisien untuk mengurutkan
data dalam array atau daftar. Dengan mencari elemen terkecil dalam sisa array yang belum
diurutkan dan menukarnya dengan elemen pertama, algoritma ini dapat mengurutkan data
secara berurutan dengan tepat dan efisien.

Penggunaannya yang mudah dan implementasinya dalam berbagai bahasa


pemrograman membuat algoritma Selection Sort menjadi pilihan populer dalam mengurutkan
data dalam program komputer.

3.2 Saran
Dalam penutup, dapat disarankan bahwa meskipun selection sort adalah salah satu
algoritma sorting yang sederhana dan mudah diimplementasikan, terdapat algoritma sorting
lainnya yang lebih efisien untuk menangani jumlah data yang besar. Pemilihan algoritma
sorting yang tepat sangat tergantung pada kebutuhan dan karakteristik spesifik dari dataset
yang dihadapi. Dalam pengembangan perangkat lunak modern, seringkali disarankan untuk
mempertimbangkan algoritma sorting dengan kompleksitas waktu yang lebih baik, seperti
quicksort atau mergesort, terutama jika kinerja dan efisiensi merupakan faktor kritis. Namun
demikian, pemahaman tentang selection sort tetap bermanfaat karena memberikan dasar
untuk memahami konsep dasar dalam algoritma sorting.

Penting juga untuk selalu mempertimbangkan faktor-faktor seperti kebutuhan ruang


penyimpanan tambahan, stabilitas algoritma, dan implementasi yang mudah dimengerti.
Dengan demikian, pemilihan algoritma sorting haruslah disesuaikan dengan konteks aplikasi
dan spesifikasinya.

7
DAFTAR PUSTAKA

Selection Sort (binus.ac.id)


Algoritma Selection Sort: Pengertian, Cara Kerja dan Contoh - LamanIT

Anda mungkin juga menyukai