Bagaimana Sorting dalam Python 3. Yuk simak infonya

Selamat datang Sobat Soul ❤

Dalam dunia pemrograman terdapat banyak sekali bahasa pemrograman yang dapat kita gunakan, salah satunya adalah Python. Python merupakan bahasa pemrograman yang paling mudah untuk dipelajari bagi orang-orang yang baru belajar pemrograman sebab berbagai sintaks di python lebih mudah dan sederhana untuk diaplikasikan ketimbang bahasa pemrograman lain seperti Java atau PHP.

Dalam Python terdapat algoritma pengurutan (sorting) yang digunakan untuk mengurutkan data. Jika Sobat Soul penasaran terkait sorting dan bagaimana saja karakteristiknya,  maka langsung saja baca info nya dibawah ini.




Pengurutan (sorting)

Data pada umumnya disajikan dalam bentuk terurut (sorted). Contohnya: kata-kata dalam kamus, indeks sebuah buku, dll. Pengurutan adalah proses pentusunan data yang awalnya acak menjadi teratur menurut aturan tertentu.

Data acak        :  5 6 9 3 1 10
Ascending       : 1 3 5 6 9 10   (menaik)
Descending     : 10 9 6 5 3 1   (menurun)

Contoh dari Algoritma Pengurutan:

·         Selection sort

                    Algoritma selection sort merupakan pengurutan dengan konsep memilih elemen dengan nilai paling rendah dan menukar elemen tersebut dengan elemen ke –i. Nilai dari i dimulai dari 1 ke n, yang dimana n merupakan jumlah total elemen dikurangi satu.

·         Buble sort

                   Algoritma bubble sort cukup populer dan sederhana. Proses pada bubble sort dilakukan dengan penukaran data disebelahnya secara terus menerus hingga dalam suatu iterasi tertentu tidak ada lagi perubahan atau pertukaran. Algoritma bubble sort termasuk ke dalam kategori algoritma comparison sort, karena menggunakan perbandingan pada operasi antar elemenya.

·         Insertion sort

                    Algoritma insertion sort merupakan suatu metode pengurutan data dengan melakukan penempatan setiap elemen data pada pisisina dengan membandingkan dengan data-data yang telah ada. Prinsip dari insertion sort adalah dengan membagi data yang akan diurutkan menjadi dua kelompok, satu kelompok yang belum diurutkan dan yang satunya lagi sudah diurutkan, Elemen yang pertama diambil dari kelompok list yang belum diurutkan dan kemudian ditempatkan sesuai posisinya pada bagian lain yang belum diurutkan.

·         Merge sort

                    Merge sort menggunakan cara memisahkan terlebih dahulu setiap data hingga menjadi berpasangan yang nanti akan dibandingkan untuk kemudian digabungkan kembali.

·         Shell short

                    Shell sort, algoritma ini biasa disebut algoritma pertambahan menurun, ditemukan oleh Donald Shell tahun 1959. Prinsipnya adalah penyortiran yang sangat efisien berdasarkan perbaikan terhadap metode insertion sort dengan menghindari pergeseran besar seperti dalam kasus penyisipan, jika nilai yang lebih kecil ke paling kanan dan harus dipindahkan ke paling kiri.

·         Counting sort

                    Counting sort merupakan sebuah teknik pengurutan dengan cara menghitung jumlah kemunculan dari setiap data yang berada di dalam array.  Pada algorithma ini kita harus membuat sebuah array penampung untuk menyimpan jumlah kemunculan data dimana ukuran dari array tersebut harus sejumlah range angka yang bisa di input oleh user. Algorithma ini dapat mengurutkan data dari besar ke kecil (Ascending) dan kecil ke besar (Descending).

·         Radix sort

                    Radix Sort adalah algortima atau metode pengurutan (sorting) tanpa pembandingan dengan kata lain, sorting Non-Comparasion sort dimana dalam prosesnya tidak melakukan perbandingan antar data. Kata radix bermakna harafiah posisi dalam angka.

·         Heap sort

                    Algoritma ini bekerja dengan menentukan elemen terbesar (atau terkecil) dari sebuah daftar elemen, dan diletakkan pada akhir (atau awal) dari daftar tersebut. Heap sort menyelesaikan sebuah pengurutan menggunakan struktur data yang disebut heap. Algoritma ini dimulai dengan membangun sebuah array heap dengan membangun tumpukan dari kumpulan data, lalu memindahkan data terbesar ke bagian belakang dari sebuah tabel hasil. Setelah itu, array heap dibangun kembali, kemudian mengambil elemen terbesar untuk diletakkan di sebelah item yang telah dipindahkan tadi. Hal ini diulang sampai array heap habis.

                    

Karakteristik Algoritma Pengurutan:

·   Modifikasi in-place  (melakukan manipulasi secara langsung pada container yang isinya diurutkan, tidak membutuhkan container tambahan yang ukurannya bergantung pada jumlah data)

·      Stable ( 2 objek dengan kunci yang sama muncul dengan urutan yang sama baik sebelum maupun sesudah diurutkan).

·    Kompleksitas Algoritma (Big-OH) yaitu ukuran performansi algoritma pengurutan, mengukur berapa banyak operasi pada algoritma dilakukan jika dibandingkan terhadap tingkat pertumbuhan data.

Semoga informasi  diatas dapat membantu Sobat Soul semua dalam menambah wawasan terkait pemrograman Python. 


Sampai jumpa di artikel bermanfaat lainnya!!

Stay healthy everyone <3



referensi:

https://www.pythonindo.com/insertion-sort-di-python/



Komentar

Postingan populer dari blog ini

Apa itu pemrograman Shell Script ? Yuk simak infonya

Apa itu Mysql? Yuk simak infonya