SlideShare a Scribd company logo
1 of 6
Metode Sorting dan Aplikasinya
Tugas Kuliah Algoritma dan Struktur Data
Yoki Satria
Manajemen Informatika
Politeknik Negeri Lampung
Bandar Lampung, Lampung
yoki.satria1996@gmail.com
Algoritma sorting
Dalam Ilmu Komputer, Algoritma Sorting merupakan
algoritma yang menempatkan elemen list pada urutan tertentu.
Urutan yang paling sering digunakan ialah urutan numerikal
dan urutan lexicographical. Sorting yang efisien sangat
dibutuhkan untuk mengoptimisasi penggunaan dari algoritma
lain seperti pencarian dan penggabungan yang membutuhkan
list terurut untuk berjalan dengan sempurna, yang juga sering
digunakan untuk Canonicalisisasi data dan menghasilkan
output yang dapat dibaca manusia. Untuk lebih lanjutnya,
output harus melengkapi dua syarat ini:
1. Output merupakan urutan yang tidak menurut
(nondecreasing) (setiap elemen tidak lebih kecil dari
elemen sebelumnya menurut dari urutan keseluruhan
yang diinginkan.
2. Output merupakan permutasi (pengurutan kembali)
dari inputan yang diberikan.
Sejak permulaan komputasi, masalah pengurutan ini telah
menarik penelitian yang serius, mungkin dikarenakan
kerumitan dari penyelesaian secara efisien disamping mudah,
dan dengan statemen yang kita mengerti. Sebagai contoh,
bubble sort pertama sekali ditemukan pada tahun
1956.[1]
Walaupun banyak yang memperkirakan
masalahnya telah terselesaikan, banyak algoritma
sorting baru yang masih ditemukan samap sekarang
(sebagai contoh, Library Sort yang baru
dipublikasikan pertama sekali pada tahun 2006).
Algoritma sorting sangat umum pada setiap kelas
pengenalan bidang Ilmu Komputer, dimana banyaknya
algoritma untuk masalah ini menyediakan pengenalan awal
mengenai banyaknya konsep algoritma inti, seperti Notasi Big
O, Algoritma Pembagi, Struktur Data, Algoritma Acak,
Analisa Best, Worst, Average Case, Running Time
Calculation, dan Batas Atas dan Bawah.
I. Pengertian sorting dan jenis-jenis
sorting
II. Sorting adalah sebuah proses merangkai benda dalam
urutan tertentu dan/atau dalam himpunan yang berbeda, dan
oleh karena itu dia memiliki dua arti umum yang berbeda.
1.Pengurutan : merangkai benda yang sejenis, sekelas, dll,
dalam urutan yang teratur.
2.Kategorisasi : pengelompokan dan pemberian label kepada
benda dengan sifat yang serupa.
Mensortir informasi atau data
Salah satu cara sorting yang penting adalah mengatur benda
informasi dalam urutan alfabetik sesuai dengan hubungan
penyusunan yang telah didefinisikan sebelumnya, misal ketika
seseorang mensortir buku-buku di perpustakaan berdasarkan
judul, subyek atau penulis (Biasanya diurutkan dalam urutan
membesar).
Urutan yang dihasilkan dapat membesar atau mengecil, karena
biasanya seluruh sorting adalah sorting angka.
Sorting dalam ilmu komputer adalah salah satu subjek riset
yang paling luas karena kebutuhan mempercepat operasi
dalam ribuan atau jutaan data selama operasi pencarian.
Tujuan utama mensortir informasi adalah untuk
mengoptimalkan tugas tertentu. Pada umumnya, ada dua cara
pengelompokan informasi: berdasarkan kategori, misal
sebuah katalog belanja di mana barang disusun
bersama di bawah judul seperti ‘rumah’, ‘olah
raga’, ‘pakaian wanita’, dll. dan berdasarkan
intensitas seperti harga, misal dari yang termurah
sampai yang termahal.
Jenis-jenis algoritma penjadwalan adalah sebagai
berikut :
1. Nonpreemptive, menggunakan konsep :
a. FIFO (First In First Out) atau FCFS (First Come First
Serve)
b. SJF (Shortest Job First)
c. HRN (Highest Ratio Next)
d. MFQ (Multiple Feedback Queues)
2. Preemptive, menggunakan konsep :
a. RR (Round Robin)
b. SRF (Shortest Remaining First)
c. PS (Priority Schedulling)
d. GS (Guaranteed Schedulling)
Klasifikasi lain selain berdasarkan dapat/tidaknya suatu proses
diambil secara paksa adalah klasifikasi berdasarkan adanya
prioritas di proses-proses, yaitu :
1. Algoritma penjadwalan tanpa berprioritas.
2. Algoritma penjadwalan berprioritas, terdiri dari :
a. Berprioritas static
b. Berprioritas dinamis
Algoritma Nonpreemptive
1. First In first Out (FIFO)
First In First Out (FIFO) merupakan penjadwalan tidak
berprioritas. FIFO adalah penjadwalan paling sederhana, yaitu
proses-proses diberi jatah waktu pemroses berdasarkan waktu
kedatangan. Pada saat proses mendapat jatah waktu pemroses,
proses dijalankan sampai selesai.
Penilaian penjadwalan ini berdasarkan kriteria optimasi :
Adil, dalam arti resmi (proses yang datang duluan akan
dilayani lebih dulu), tapi dinyatakan tidak adil karena job-job
yang perlu waktu lama membuat job-job pendek menunggu.
Job-job yang tidak penting dapat membuat job-job penting
menunggu lama.
Efisiensi, sangat efisien.
Waktu tanggap sangat jelek, tidak cocok untuk sistem
interaktif apalagi untuk sistem waktu nyata.
Turn around time kurang baik.
Throughtput kurang baik. FIFO jarang digunakan secara
mandiri, tetapi dikombinasikan dengan skema lain.
Baik untuk sistem batch yang sangat jarang berinteraksi
dengan pemakai.
Contoh : aplikasi analisis numerik, maupun pembuatan tabel.
Sangat tidak baik (tidak berguna) untuk sistem interaktif,
karena tidak memberi waktu tanggap yang baik.
Tidak dapat digunakan untuk sistem waktu nyata (real-time
applications).
2. Shortest Job First (SJF)
Penjadwalan ini mengasumsikan waktu berjalannya proses
sampai selesai telah diketahui sebelumnya. Mekanismenya
adalah menjadwalkan proses dengan waktu jalan terpendek
lebih dulu sampai selesai, sehingga memberikan efisiensi yang
tinggi dan turn around time rendah dan penjadwalannya tak
berprioritas.
Contoh :
Terdapat empat proses (job) yaitu A,B,C,D dengan waktu
jalannya masing-masing adalah 8,4,4 dan 4 menit. Apabila
proses-proses tersebut dijalankan, maka turn around time
untuk A adalah 8 menit, untuk B adalah 12, untuk C adalah 16
dan untuk D adalah 20. Apabila keempat proses tersebut
menggunakan penjadwalan shortest job fisrt, maka turn
around time untuk B adalah 4, untuk C adalah 8, untuk D
adalah 12 dan untuk A adalah 20.
Karena SJF selalu memperhatikan rata-rata waktu respon
terkecil, maka sangat baik untuk proses interaktif. Umumnya
proses interaktif memiliki pola, yaitu menunggu perintah,
menjalankan perintah, menunggu perintah dan menjalankan
perintah, begitu seterusnya. Masalah yang muncul adalah
tidak mengetahui ukuran job saat job masuk. Untuk
mengetahui ukuran job adalah dengan membuat estimasi
berdasarkan kelakukan sebelumnya. Prosesnya tidak datang
bersamaan, sehingga penetapannya harus dinamis.
Penjadwalan ini jarang digunakan karena merupakan kajian
teoritis untuk pembandingan turn around time.
3. Highest Ratio Next (HRN)
Highest Ratio Next merupakan strategi penjadwalan dengan
prioritas proses tidak hanya berdasarkan fungsi waktu layanan
tetapi juga jumlah waktu tunggu proses. Begitu proses
mendapat jatah pemroses, proses berjalan sampai selesai.
Prioritas dinamis HRN dihitung berdasarkan rumus : Prioritas
= (waktu tunggu + waktu layanan)/ waktu layanan Karena
waktu layanan muncul sebagai pembagi, maka job lebih
pendek berprioritas lebih baik, karena waktu tunggu sebagai
pembilang maka proses yang telah menunggu lebih lama juga
mempunyai kesempatan lebih bagus. Disebut HRN, karena
waktu tunggu ditambah waktu layanan adalah waktu tanggap,
yang berarti waktu tanggap tertinggi yang harus dilayani.
. Multiple Feedback Queues (MFQ)
Merupakan penjadwalan berprioritas dinamis. Penjadwalan ini
untuk mencegah (mengurangi) banyaknya swappingdengan
proses-proses yang sangat banyak menggunakan pemroses
(karena menyelesaikan tugasnya memakan waktu lama) diberi
jatah waktu (jumlah kwanta) lebih banyak dalam satu waktu.
Penjadwalan ini juga menghendaki kelas-kelas prioritas bagi
proses-proses yang ada. Kelas tertinggi berjalan selama satu
kwanta, kelas berikutnya berjalan selama dua kwanta, kelas
berikutnya berjalan empat kwanta, dan seterusnya. Ketentuan
yang berlaku adalah sebagai berikut :
Jalankan proses pada kelas tertinggi.
ika proses menggunakan seluruh kwanta yang dialokasikan,
maka diturunkan kelas prioritasnya.
Proses yang masuk untuk pertama kali ke sistem langsung
diberi kelas tertinggi.
Mekanisme ini mencegah proses yang perlu berjalan lama
swapping berkali-kali dan mencegah proses-proses interaktif
yang singkat harus menunggu lama.
Using the Template
After the text edit has been completed, the paper is ready
for the template. Duplicate the template file by using the Save
As command, and use the naming convention prescribed by
your conference for the name of your paper. In this newly
created file, highlight all of the contents and import your
prepared text file. You are now ready to style your paper; use
the scroll down window on the left of the MS Word
Formatting toolbar.
A. Authors and Affiliations
Kelemahan :
Implementasi mekanisme prioritas dinamis lebih kompleks dan
mempunyai overhead lebih besar. Overhead ini diimbangi
dengan peningkatan daya tanggap sistem.
Contoh penjadwalan berprioritas :
Proses-proses yang sangat banyak operasi masukan/keluaran
menghabiskan kebanyakan waktu menunggu selesainya
operasinya masukan/keluaran. Proses-proses ini diberi prioritas
sangat tinggi sehingga begitu proses Memerlukan pemroses
segera diberikan, proses akan segera memulai permintaan
masukan/keluaran berikutnya sehingga menyebabkan proses
blocked menunggu selesainya operasi masukan/keluaran.
Dengan demikian pemroses dapat dipergunakan proses-proses
lain. Proses-proses I/O berjalan paralel bersama proses-proses
lain yang benar-benar memerlukan pemroses, sementara
proses-proses I/O itu menunggu selesainya operasi DMA.
Proses-proses yang sangat banyak operasi I/O-nya, kalau harus
JENIS-JENIS SORTING, CONTOH DAN APLIKASINYA
1) BUBBLE SORT
Bubble sort adalah salah satu metode sorting atau
mengurutkan dari data terkecil ke data terbesar ataupun
dengan cara membandingkan elemen kesatu dengan elemen
yang selanjutnya.
Contoh Penggunaannya :
I. 10 66 5 7 9 8
10 5 66 7 9 8
5 10 66 7 9 8
II. 5 10 66 7 9 8
5 10 7 66 9 8
5 7 10 66 9 8
III. menunggu lama untuk memakai pemroses (karena
prioritas rendah) hanya akan membebani memori,
karena harus disimpan tanpa perlu proses-proses itu
dimemori karena tidak selesai-selesai menunggu
operasi masukan dan menunggu jatah pemroses.
5 7 10 66 9 8
5 7 10 66 8 9
5 7 10 8 66 9
5 7 8 10 66 9
IV. 5 7 8 10 66 9
5 7 8 10 9 66
5 7 8 9 10 66
Hasilnya : 5 7 8 9 10 66
Aplikasinya :
 Prosedur Bubble Sort
void bubble_sort(){
for(int i=1;i<n;i++){
for(int j=n-1;j>=i;j--){
if(data[j]<data[j-1]) tukar(&data[j],&data[j-1]);
//ascending
}
}
}
2) SELECTION SORT
Jika anda diminta untuk membuat algoritma sorting tersendiri,
anda mungkin akan menemukan sebuah algoritma yang mirip
dengan selection sort. Layaknya insertion sort, algoritma ini
sangat rapat dan mudah untuk diimplementasikan. Mari kita
kembali menelusuri bagaimana algoritma ini berfungsi
terhadap satu paket kartu. Asumsikan bahwa kartu tersebut
akan diurutkan secara ascending. Pada awalnya, kartu tersebut
akan disusun secara linier pada sebuah meja dari kiri ke
kanan, dan dari atas ke bawah. Pilih nilai kartu yang paling
Contoh penggunaannya :
Posisi 0 1 2 3 4 5
I. 10 66 5 7 9 8
Pembanding Posisi
10 < 66 0
10 > 5 (Tukar Idx) 2
5 < 7 2
5 < 9 2
5< 8 2
Posisi 0 1 2 3 4 5
II. 5 66 10 7 9 8
Pembanding Posisi
66 > 10 (Tukar Idx) 2
10 > 7 (Tukar Idx) 3
7 < 9 3
7 < 8 3
Posisi 0 1 2 3 4 5
III. 5 7 10 66 9 8
Pembanding Posisi
10 < 66 2
10 > 9 (Tukar Idx) 4
7 > 9 (Tukar Idx) 5
Posisi 0 1 2 3 4 5
IV. 5 7 8 66 9 10
Pembanding Posisi
66 > 9 (Tukar Idx) 4
9 < 10 4
Posisi 0 1 2 3 4 5
V. 5 7 8 66 9 10
Pembanding Posisi
66 > 10 (Tukar Idx) 5
Hasilnya : 5 7 8 9 10 66
Aplikasinya :
 Prosedur Selection Sort
void selection_sort(){
for(int i=0;i<n-1;i++){
pos = i;
for(int j=i+1;j<n;j++){
if(data[j] < data[pos]) pos = j; //ascending
}
if(pos != i) tukar(&data[pos],&data[i]);
}
}
1) INSERTION SORT
Salah satu algoritma sorting yang paling sederhana adalah
insertion sort. Ide dari algoritma ini dapat dianalogikan seperti
mengurutkan kartu. Penjelasan berikut ini menerangkan
bagaimana algoritma insertion sort bekerja dalam pengurutan
kartu. Anggaplah anda ingin mengurutkan satu set kartu dari
kartu yang bernilai paling kecil hingga yang paling besar.
Seluruh kartu diletakkan pada meja, sebutlah meja ini sebagai
meja pertama, disusun dari kiri ke kanan dan atas ke bawah.
Kemudian kita mempunyai meja yang lain, meja kedua,
dimana kartu yang diurutkan akan diletakkan. Ambil kartu
pertama yang terletak pada pojok kiri atas meja pertama
dan letakkan pada meja kedua. Ambil kartu kedua dari meja
pertama, bandingkan dengan kartu yang berada pada meja
kedua, kemudian letakkan pada urutan yang sesuai setelah
perbandingan. Proses tersebut akan berlangsung hingga seluruh
kartu pada meja pertama telah diletakkan berurutan pada meja
kedua. Algoritma insertion sort pada dasarnya memilah data
yang akan diurutkan menjadi dua bagian, yang belum
diurutkan (meja pertama) dan yang sudah diurutkan (meja
kedua). Elemen pertama diambil dari bagian array yang belum
diurutkan dan kemudian diletakkan sesuai posisinya
Contoh penggunaannya :
I.
Posisi 0 1 2 3 4 5
10 66 5 7 9 8
Temp Cek Geser
66 Temp > 10? -
II.
Posisi 0 1 2 3 4 5
10 66 5 7 9 8
Temp Cek Geser
5 Temp < 41 Geser data ke-1 ke posisi 2
5 Temp < 10 Geser data ke-0 ke posisi 1
III.
Posisi 0 1 2 3 4 5
5 10 66 7 9 8
Temp Cek Geser
7 Temp < 41 Geser data ke-2 ke posisi 3
7 Temp < 10 Geser data ke-1 ke posisi 2
7 Temp > 5 -
IV.
Posisi 0 1 2 3 4 5
5 7 10 66 9 8
Temp Cek Geser
9 Temp < 41 Geser data ke-3 ke posisi 4
9 Temp < 10 Geser data ke-2 ke posisi 3
9 Temp > 7 -
9 Temp > 5 -
V.
Posisi 0 1 2 3 4 5
5 7 9 10 66 8
Temp Cek Geser
8 Temp < 41 Geser data ke-4 ke posisi 5
8 Temp < 10 Geser data ke-3 ke posisi 4
8 Temp < 9 Geser data ke-2 ke posisi 3
8 Temp > 7 -
8 Temp > 5 -
1) MERGE SORT
Sebelum mendalami algoritma merge sort, mari kita
mengetahui garis besar dari konsep divide and conquer karena
merge sort mengadaptasi pola tersebut. Beberapa algoritma
mengimplementasikan konsep rekursi untuk menyelesaikan
permasalahan. Permasalahan utama kemudian dipecah
menjadi sub-masalah, kemudian solusi dari sub-masalah akan
membimbing menuju solusi permasalahan utama.
Pada setiap tingkatan rekursi, pola tersebut terdiri atas 3
langkah.
1. Divide
Memilah masalah menjadi sub masalah
2. Conquer
Selesaikan sub masalah tersebut secara rekursif. Jika sub-
masalah tersebut cukup ringkas dan sederhana, pendekatan
penyelesaian secara langsung akan lebih efektif
3. Kombinasi
Mengkombinasikan solusi dari sub-masalah, yang akan
membimbing menuju penyelesaian atas permasalahan utama
Memahami Merge Sort
Seperti yang telah dijelaskan sebelumnya, Merge sort
menggunakan pola divide and conquer. Dengan hal ini
deskripsi dari algoritma dirumuskan dalam 3 langkah
berpola divide-and-conquer. Berikut menjelaskan langkah
kerja dari Merge sort.
1. Divide
Memilah elemen – elemen dari rangkaian data menjadi dua
bagian.
2. Conquer
Conquer setiap bagian dengan memanggil prosedur merge sort
secararekursif
3. Kombinasi
Mengkombinasikan dua bagian tersebut secara rekursif untuk
mendapatkan rangkaian data berurutan
Proses rekursi berhenti jika mencapai elemen dasar. Hal ini
terjadi bilamana bagian yang akan diurutkan menyisakan tepat
satu elemen. Sisa pengurutan satu elemen tersebut
menandakan bahwa bagian tersebut telah terurut sesuai
rangkaian.
2) QUICKSORT
II. 1] dan A[q+1…r]
dimana setiap elemen A[p…q-1] adalah kurang dari atau sama
dengan A[q] dan setiap elemen pada A[q+1…r] adalah lebih
besar atau sama dengan elemen pada A[q]. A[q] disebut
sebagai elemen pivot. Perhitungan pada elemen q merupakan
salah satu bagian dari prosedur pemisahan.
2. Conquer
Mengurutkan elemen pada sub-rangkaian secara rekursif
Pada algoritma quicksort, langkah ”kombinasi” tidak di
lakukan karena telah terjadi
pengurutan elemen – elemen pada sub-array.
DAFTAR PUSTAKA
 https://liliskriyaningsih.wordpress.com
 http://id.wikipedia.org/wiki/Algoritma_sorting
 http://zeftaadetya.blogspot.com/2014/02/pengertia
n-bubble-sort-dan-contoh.html
V.
Posisi 0 1 2 3 4 5
5 7 9 10 66 8
Temp Cek Geser
8 Temp < 41 Geser data ke-4 ke posisi 5
8 Temp < 10 Geser data ke-3 ke posisi 4
8 Temp < 9 Geser data ke-2 ke posisi 3
8 Temp > 7 -
8 Temp > 5 -
1) MERGE SORT
Sebelum mendalami algoritma merge sort, mari kita
mengetahui garis besar dari konsep divide and conquer karena
merge sort mengadaptasi pola tersebut. Beberapa algoritma
mengimplementasikan konsep rekursi untuk menyelesaikan
permasalahan. Permasalahan utama kemudian dipecah
menjadi sub-masalah, kemudian solusi dari sub-masalah akan
membimbing menuju solusi permasalahan utama.
Pada setiap tingkatan rekursi, pola tersebut terdiri atas 3
langkah.
1. Divide
Memilah masalah menjadi sub masalah
2. Conquer
Selesaikan sub masalah tersebut secara rekursif. Jika sub-
masalah tersebut cukup ringkas dan sederhana, pendekatan
penyelesaian secara langsung akan lebih efektif
3. Kombinasi
Mengkombinasikan solusi dari sub-masalah, yang akan
membimbing menuju penyelesaian atas permasalahan utama
Memahami Merge Sort
Seperti yang telah dijelaskan sebelumnya, Merge sort
menggunakan pola divide and conquer. Dengan hal ini
deskripsi dari algoritma dirumuskan dalam 3 langkah
berpola divide-and-conquer. Berikut menjelaskan langkah
kerja dari Merge sort.
1. Divide
Memilah elemen – elemen dari rangkaian data menjadi dua
bagian.
2. Conquer
Conquer setiap bagian dengan memanggil prosedur merge sort
secararekursif
3. Kombinasi
Mengkombinasikan dua bagian tersebut secara rekursif untuk
mendapatkan rangkaian data berurutan
Proses rekursi berhenti jika mencapai elemen dasar. Hal ini
terjadi bilamana bagian yang akan diurutkan menyisakan tepat
satu elemen. Sisa pengurutan satu elemen tersebut
menandakan bahwa bagian tersebut telah terurut sesuai
rangkaian.
2) QUICKSORT
II. 1] dan A[q+1…r]
dimana setiap elemen A[p…q-1] adalah kurang dari atau sama
dengan A[q] dan setiap elemen pada A[q+1…r] adalah lebih
besar atau sama dengan elemen pada A[q]. A[q] disebut
sebagai elemen pivot. Perhitungan pada elemen q merupakan
salah satu bagian dari prosedur pemisahan.
2. Conquer
Mengurutkan elemen pada sub-rangkaian secara rekursif
Pada algoritma quicksort, langkah ”kombinasi” tidak di
lakukan karena telah terjadi
pengurutan elemen – elemen pada sub-array.
DAFTAR PUSTAKA
 https://liliskriyaningsih.wordpress.com
 http://id.wikipedia.org/wiki/Algoritma_sorting
 http://zeftaadetya.blogspot.com/2014/02/pengertia
n-bubble-sort-dan-contoh.html

More Related Content

What's hot

Dfd
DfdDfd
Dfdjoko
 
Tugas Kelompok Sistem Operasi
Tugas Kelompok Sistem OperasiTugas Kelompok Sistem Operasi
Tugas Kelompok Sistem OperasiNoval C. Kesuma
 
Diagram aliran data untuk perusahaan kecil
Diagram aliran data untuk perusahaan kecilDiagram aliran data untuk perusahaan kecil
Diagram aliran data untuk perusahaan kecilMUHAMADANGGORO1
 
Sia diagram aliran data untuk perusahaan kecil
Sia   diagram aliran data untuk perusahaan kecilSia   diagram aliran data untuk perusahaan kecil
Sia diagram aliran data untuk perusahaan kecilTheresia Magdalena
 
Analisis dan perancangan sistem informasi
Analisis dan perancangan sistem informasiAnalisis dan perancangan sistem informasi
Analisis dan perancangan sistem informasiDyah Ayu Damayanti
 
Perencanaan sistem informasi
Perencanaan sistem informasiPerencanaan sistem informasi
Perencanaan sistem informasiKus Naeni
 
Tugas 11, septi hendarwati,yananto mihadi putra, se, m.si, aplikasi konsep ba...
Tugas 11, septi hendarwati,yananto mihadi putra, se, m.si, aplikasi konsep ba...Tugas 11, septi hendarwati,yananto mihadi putra, se, m.si, aplikasi konsep ba...
Tugas 11, septi hendarwati,yananto mihadi putra, se, m.si, aplikasi konsep ba...SeptiHendarwati
 
Materi Data Flow Diagram.pdf
Materi Data Flow Diagram.pdfMateri Data Flow Diagram.pdf
Materi Data Flow Diagram.pdfxdrivemagishop
 
strukturisasi kebutuhan
strukturisasi kebutuhanstrukturisasi kebutuhan
strukturisasi kebutuhanIim Punya
 

What's hot (14)

Pengembangan Sistem Informasi
Pengembangan Sistem InformasiPengembangan Sistem Informasi
Pengembangan Sistem Informasi
 
04.isi
04.isi04.isi
04.isi
 
Dfd
DfdDfd
Dfd
 
Tugas Kelompok Sistem Operasi
Tugas Kelompok Sistem OperasiTugas Kelompok Sistem Operasi
Tugas Kelompok Sistem Operasi
 
Konsep Dasar Sistem
Konsep Dasar SistemKonsep Dasar Sistem
Konsep Dasar Sistem
 
Process Modeling
Process ModelingProcess Modeling
Process Modeling
 
Diagram aliran data untuk perusahaan kecil
Diagram aliran data untuk perusahaan kecilDiagram aliran data untuk perusahaan kecil
Diagram aliran data untuk perusahaan kecil
 
Sia diagram aliran data untuk perusahaan kecil
Sia   diagram aliran data untuk perusahaan kecilSia   diagram aliran data untuk perusahaan kecil
Sia diagram aliran data untuk perusahaan kecil
 
Analisis dan perancangan sistem informasi
Analisis dan perancangan sistem informasiAnalisis dan perancangan sistem informasi
Analisis dan perancangan sistem informasi
 
Perencanaan sistem informasi
Perencanaan sistem informasiPerencanaan sistem informasi
Perencanaan sistem informasi
 
Tugas 11, septi hendarwati,yananto mihadi putra, se, m.si, aplikasi konsep ba...
Tugas 11, septi hendarwati,yananto mihadi putra, se, m.si, aplikasi konsep ba...Tugas 11, septi hendarwati,yananto mihadi putra, se, m.si, aplikasi konsep ba...
Tugas 11, septi hendarwati,yananto mihadi putra, se, m.si, aplikasi konsep ba...
 
Materi Data Flow Diagram.pdf
Materi Data Flow Diagram.pdfMateri Data Flow Diagram.pdf
Materi Data Flow Diagram.pdf
 
Bab 7 dfd
Bab 7 dfdBab 7 dfd
Bab 7 dfd
 
strukturisasi kebutuhan
strukturisasi kebutuhanstrukturisasi kebutuhan
strukturisasi kebutuhan
 

Similar to Tugas Sorting Algoritma - Yoki satria

Pertemuan 3.2.x penjadwalan
Pertemuan 3.2.x penjadwalanPertemuan 3.2.x penjadwalan
Pertemuan 3.2.x penjadwalanSetyady Peace
 
Bernis Sagita - Manajemen proses
Bernis Sagita - Manajemen prosesBernis Sagita - Manajemen proses
Bernis Sagita - Manajemen prosesbelajarkomputer
 
Penjadwalan Proses.pptx
Penjadwalan Proses.pptxPenjadwalan Proses.pptx
Penjadwalan Proses.pptxAlbertLobo7
 
Proses Penjadwalan Pada Sistem Operasi - Copy.pptx
Proses Penjadwalan Pada Sistem Operasi - Copy.pptxProses Penjadwalan Pada Sistem Operasi - Copy.pptx
Proses Penjadwalan Pada Sistem Operasi - Copy.pptxZuhri38
 
PENYEDERHANAAN KERJA_DORI NOVITA L_162012023
PENYEDERHANAAN KERJA_DORI NOVITA L_162012023PENYEDERHANAAN KERJA_DORI NOVITA L_162012023
PENYEDERHANAAN KERJA_DORI NOVITA L_162012023Dorii Listypeach
 
Sistem waktu nyata komputer projek .pptx
Sistem waktu nyata komputer projek .pptxSistem waktu nyata komputer projek .pptx
Sistem waktu nyata komputer projek .pptxRafdianrizkyraharja
 
Penjadwalan_Proses_I.pptx
Penjadwalan_Proses_I.pptxPenjadwalan_Proses_I.pptx
Penjadwalan_Proses_I.pptxapaanyaakulupa
 
Pendataan Perhitungan Gaji Karyawan Suatu Perusahaan dengan Menggunakan HashT...
Pendataan Perhitungan Gaji Karyawan Suatu Perusahaan dengan Menggunakan HashT...Pendataan Perhitungan Gaji Karyawan Suatu Perusahaan dengan Menggunakan HashT...
Pendataan Perhitungan Gaji Karyawan Suatu Perusahaan dengan Menggunakan HashT...RafaelTambunan2
 
Karakteristik data warehouse
Karakteristik data warehouseKarakteristik data warehouse
Karakteristik data warehousesuleman ganteng
 
Penjadwalan Proses CPU.ppt
Penjadwalan Proses CPU.pptPenjadwalan Proses CPU.ppt
Penjadwalan Proses CPU.pptUkiUngga
 
Penjadwalan Proses CPU.ppt
Penjadwalan Proses CPU.pptPenjadwalan Proses CPU.ppt
Penjadwalan Proses CPU.pptUkiUngga
 
PERANCANGAN BASIS DATA - SISTEM KOMPUTER
PERANCANGAN BASIS DATA - SISTEM KOMPUTERPERANCANGAN BASIS DATA - SISTEM KOMPUTER
PERANCANGAN BASIS DATA - SISTEM KOMPUTERSitiOlis
 
Makalah manajemen-perkantoran-21
Makalah manajemen-perkantoran-21Makalah manajemen-perkantoran-21
Makalah manajemen-perkantoran-21Fitriadye Banjang
 
Penjadwalan-Proses.ppt
Penjadwalan-Proses.pptPenjadwalan-Proses.ppt
Penjadwalan-Proses.pptMuhamadMuslih7
 
penjadwalan proses
penjadwalan prosespenjadwalan proses
penjadwalan prosesvelisya NT
 

Similar to Tugas Sorting Algoritma - Yoki satria (20)

Pertemuan 3.2.x penjadwalan
Pertemuan 3.2.x penjadwalanPertemuan 3.2.x penjadwalan
Pertemuan 3.2.x penjadwalan
 
Bernis Sagita - Manajemen proses
Bernis Sagita - Manajemen prosesBernis Sagita - Manajemen proses
Bernis Sagita - Manajemen proses
 
Penjadwalan Proses.pptx
Penjadwalan Proses.pptxPenjadwalan Proses.pptx
Penjadwalan Proses.pptx
 
Proses Penjadwalan Pada Sistem Operasi - Copy.pptx
Proses Penjadwalan Pada Sistem Operasi - Copy.pptxProses Penjadwalan Pada Sistem Operasi - Copy.pptx
Proses Penjadwalan Pada Sistem Operasi - Copy.pptx
 
algoritma
algoritmaalgoritma
algoritma
 
PENYEDERHANAAN KERJA_DORI NOVITA L_162012023
PENYEDERHANAAN KERJA_DORI NOVITA L_162012023PENYEDERHANAAN KERJA_DORI NOVITA L_162012023
PENYEDERHANAAN KERJA_DORI NOVITA L_162012023
 
Sistem waktu nyata komputer projek .pptx
Sistem waktu nyata komputer projek .pptxSistem waktu nyata komputer projek .pptx
Sistem waktu nyata komputer projek .pptx
 
Modul 1 promodel
Modul 1 promodelModul 1 promodel
Modul 1 promodel
 
s
ss
s
 
Penjadwalan_Proses_I.pptx
Penjadwalan_Proses_I.pptxPenjadwalan_Proses_I.pptx
Penjadwalan_Proses_I.pptx
 
Pendataan Perhitungan Gaji Karyawan Suatu Perusahaan dengan Menggunakan HashT...
Pendataan Perhitungan Gaji Karyawan Suatu Perusahaan dengan Menggunakan HashT...Pendataan Perhitungan Gaji Karyawan Suatu Perusahaan dengan Menggunakan HashT...
Pendataan Perhitungan Gaji Karyawan Suatu Perusahaan dengan Menggunakan HashT...
 
Bab3
Bab3Bab3
Bab3
 
Karakteristik data warehouse
Karakteristik data warehouseKarakteristik data warehouse
Karakteristik data warehouse
 
Penjadwalan Proses CPU.ppt
Penjadwalan Proses CPU.pptPenjadwalan Proses CPU.ppt
Penjadwalan Proses CPU.ppt
 
Penjadwalan Proses CPU.ppt
Penjadwalan Proses CPU.pptPenjadwalan Proses CPU.ppt
Penjadwalan Proses CPU.ppt
 
Penjadwalan Proses
Penjadwalan ProsesPenjadwalan Proses
Penjadwalan Proses
 
PERANCANGAN BASIS DATA - SISTEM KOMPUTER
PERANCANGAN BASIS DATA - SISTEM KOMPUTERPERANCANGAN BASIS DATA - SISTEM KOMPUTER
PERANCANGAN BASIS DATA - SISTEM KOMPUTER
 
Makalah manajemen-perkantoran-21
Makalah manajemen-perkantoran-21Makalah manajemen-perkantoran-21
Makalah manajemen-perkantoran-21
 
Penjadwalan-Proses.ppt
Penjadwalan-Proses.pptPenjadwalan-Proses.ppt
Penjadwalan-Proses.ppt
 
penjadwalan proses
penjadwalan prosespenjadwalan proses
penjadwalan proses
 

Recently uploaded

aksi nyata sosialisasi Profil Pelajar Pancasila.pdf
aksi nyata sosialisasi  Profil Pelajar Pancasila.pdfaksi nyata sosialisasi  Profil Pelajar Pancasila.pdf
aksi nyata sosialisasi Profil Pelajar Pancasila.pdfsdn3jatiblora
 
Sesi 1_PPT Ruang Kolaborasi Modul 1.3 _ ke 1_PGP Angkatan 10.pptx
Sesi 1_PPT Ruang Kolaborasi Modul 1.3 _ ke 1_PGP Angkatan 10.pptxSesi 1_PPT Ruang Kolaborasi Modul 1.3 _ ke 1_PGP Angkatan 10.pptx
Sesi 1_PPT Ruang Kolaborasi Modul 1.3 _ ke 1_PGP Angkatan 10.pptxSovyOktavianti
 
PELAKSANAAN + Link2 Materi BimTek _PTK 007 Rev-5 Thn 2023 (PENGADAAN) & Perhi...
PELAKSANAAN + Link2 Materi BimTek _PTK 007 Rev-5 Thn 2023 (PENGADAAN) & Perhi...PELAKSANAAN + Link2 Materi BimTek _PTK 007 Rev-5 Thn 2023 (PENGADAAN) & Perhi...
PELAKSANAAN + Link2 Materi BimTek _PTK 007 Rev-5 Thn 2023 (PENGADAAN) & Perhi...Kanaidi ken
 
(NEW) Template Presentasi UGM 2 (2).pptx
(NEW) Template Presentasi UGM 2 (2).pptx(NEW) Template Presentasi UGM 2 (2).pptx
(NEW) Template Presentasi UGM 2 (2).pptxSirlyPutri1
 
CAPACITY BUILDING Materi Saat di Lokakarya 7
CAPACITY BUILDING Materi Saat di Lokakarya 7CAPACITY BUILDING Materi Saat di Lokakarya 7
CAPACITY BUILDING Materi Saat di Lokakarya 7IwanSumantri7
 
PPT AKSI NYATA KOMUNITAS BELAJAR .ppt di SD
PPT AKSI NYATA KOMUNITAS BELAJAR .ppt di SDPPT AKSI NYATA KOMUNITAS BELAJAR .ppt di SD
PPT AKSI NYATA KOMUNITAS BELAJAR .ppt di SDNurainiNuraini25
 
2 KISI-KISI Ujian Sekolah Dasar mata pelajaranPPKn 2024.pdf
2 KISI-KISI Ujian Sekolah Dasar  mata pelajaranPPKn 2024.pdf2 KISI-KISI Ujian Sekolah Dasar  mata pelajaranPPKn 2024.pdf
2 KISI-KISI Ujian Sekolah Dasar mata pelajaranPPKn 2024.pdfsdn3jatiblora
 
vIDEO kelayakan berita untuk mahasiswa.ppsx
vIDEO kelayakan berita untuk mahasiswa.ppsxvIDEO kelayakan berita untuk mahasiswa.ppsx
vIDEO kelayakan berita untuk mahasiswa.ppsxsyahrulutama16
 
PPT PERUBAHAN LINGKUNGAN MATA PELAJARAN BIOLOGI KELAS X.pptx
PPT PERUBAHAN LINGKUNGAN MATA PELAJARAN BIOLOGI KELAS X.pptxPPT PERUBAHAN LINGKUNGAN MATA PELAJARAN BIOLOGI KELAS X.pptx
PPT PERUBAHAN LINGKUNGAN MATA PELAJARAN BIOLOGI KELAS X.pptxdpp11tya
 
1.3.a.3. Mulai dari Diri - Modul 1.3 Refleksi 1 Imajinasiku tentang Murid di ...
1.3.a.3. Mulai dari Diri - Modul 1.3 Refleksi 1 Imajinasiku tentang Murid di ...1.3.a.3. Mulai dari Diri - Modul 1.3 Refleksi 1 Imajinasiku tentang Murid di ...
1.3.a.3. Mulai dari Diri - Modul 1.3 Refleksi 1 Imajinasiku tentang Murid di ...MetalinaSimanjuntak1
 
PEMANASAN GLOBAL - MATERI KELAS X MA.pptx
PEMANASAN GLOBAL - MATERI KELAS X MA.pptxPEMANASAN GLOBAL - MATERI KELAS X MA.pptx
PEMANASAN GLOBAL - MATERI KELAS X MA.pptxsukmakarim1998
 
Keterampilan menyimak kelas bawah tugas UT
Keterampilan menyimak kelas bawah tugas UTKeterampilan menyimak kelas bawah tugas UT
Keterampilan menyimak kelas bawah tugas UTIndraAdm
 
Latsol TWK Nasionalisme untuk masuk CPNS
Latsol TWK Nasionalisme untuk masuk CPNSLatsol TWK Nasionalisme untuk masuk CPNS
Latsol TWK Nasionalisme untuk masuk CPNSdheaprs
 
MODUL 1 Pembelajaran Kelas Rangkap-compressed.pdf
MODUL 1 Pembelajaran Kelas Rangkap-compressed.pdfMODUL 1 Pembelajaran Kelas Rangkap-compressed.pdf
MODUL 1 Pembelajaran Kelas Rangkap-compressed.pdfNurulHikmah50658
 
PELAKSANAAN + Link-Link MATERI Training_ "Effective INVENTORY & WAREHOUSING...
PELAKSANAAN  + Link-Link MATERI Training_ "Effective INVENTORY &  WAREHOUSING...PELAKSANAAN  + Link-Link MATERI Training_ "Effective INVENTORY &  WAREHOUSING...
PELAKSANAAN + Link-Link MATERI Training_ "Effective INVENTORY & WAREHOUSING...Kanaidi ken
 
PPT Penjumlahan Bersusun Kelas 1 Sekolah Dasar
PPT Penjumlahan Bersusun Kelas 1 Sekolah DasarPPT Penjumlahan Bersusun Kelas 1 Sekolah Dasar
PPT Penjumlahan Bersusun Kelas 1 Sekolah Dasarrenihartanti
 
Modul Ajar Pendidikan Pancasila Kelas 5 Fase C
Modul Ajar Pendidikan Pancasila Kelas 5 Fase CModul Ajar Pendidikan Pancasila Kelas 5 Fase C
Modul Ajar Pendidikan Pancasila Kelas 5 Fase CAbdiera
 
Contoh Laporan Observasi Pembelajaran Rekan Sejawat.pdf
Contoh Laporan Observasi Pembelajaran Rekan Sejawat.pdfContoh Laporan Observasi Pembelajaran Rekan Sejawat.pdf
Contoh Laporan Observasi Pembelajaran Rekan Sejawat.pdfCandraMegawati
 
Modul Projek - Batik Ecoprint - Fase B.pdf
Modul Projek  - Batik Ecoprint - Fase B.pdfModul Projek  - Batik Ecoprint - Fase B.pdf
Modul Projek - Batik Ecoprint - Fase B.pdfanitanurhidayah51
 
Sosialisasi PPDB SulSel tahun 2024 di Sulawesi Selatan
Sosialisasi PPDB SulSel tahun 2024 di Sulawesi SelatanSosialisasi PPDB SulSel tahun 2024 di Sulawesi Selatan
Sosialisasi PPDB SulSel tahun 2024 di Sulawesi Selatanssuser963292
 

Recently uploaded (20)

aksi nyata sosialisasi Profil Pelajar Pancasila.pdf
aksi nyata sosialisasi  Profil Pelajar Pancasila.pdfaksi nyata sosialisasi  Profil Pelajar Pancasila.pdf
aksi nyata sosialisasi Profil Pelajar Pancasila.pdf
 
Sesi 1_PPT Ruang Kolaborasi Modul 1.3 _ ke 1_PGP Angkatan 10.pptx
Sesi 1_PPT Ruang Kolaborasi Modul 1.3 _ ke 1_PGP Angkatan 10.pptxSesi 1_PPT Ruang Kolaborasi Modul 1.3 _ ke 1_PGP Angkatan 10.pptx
Sesi 1_PPT Ruang Kolaborasi Modul 1.3 _ ke 1_PGP Angkatan 10.pptx
 
PELAKSANAAN + Link2 Materi BimTek _PTK 007 Rev-5 Thn 2023 (PENGADAAN) & Perhi...
PELAKSANAAN + Link2 Materi BimTek _PTK 007 Rev-5 Thn 2023 (PENGADAAN) & Perhi...PELAKSANAAN + Link2 Materi BimTek _PTK 007 Rev-5 Thn 2023 (PENGADAAN) & Perhi...
PELAKSANAAN + Link2 Materi BimTek _PTK 007 Rev-5 Thn 2023 (PENGADAAN) & Perhi...
 
(NEW) Template Presentasi UGM 2 (2).pptx
(NEW) Template Presentasi UGM 2 (2).pptx(NEW) Template Presentasi UGM 2 (2).pptx
(NEW) Template Presentasi UGM 2 (2).pptx
 
CAPACITY BUILDING Materi Saat di Lokakarya 7
CAPACITY BUILDING Materi Saat di Lokakarya 7CAPACITY BUILDING Materi Saat di Lokakarya 7
CAPACITY BUILDING Materi Saat di Lokakarya 7
 
PPT AKSI NYATA KOMUNITAS BELAJAR .ppt di SD
PPT AKSI NYATA KOMUNITAS BELAJAR .ppt di SDPPT AKSI NYATA KOMUNITAS BELAJAR .ppt di SD
PPT AKSI NYATA KOMUNITAS BELAJAR .ppt di SD
 
2 KISI-KISI Ujian Sekolah Dasar mata pelajaranPPKn 2024.pdf
2 KISI-KISI Ujian Sekolah Dasar  mata pelajaranPPKn 2024.pdf2 KISI-KISI Ujian Sekolah Dasar  mata pelajaranPPKn 2024.pdf
2 KISI-KISI Ujian Sekolah Dasar mata pelajaranPPKn 2024.pdf
 
vIDEO kelayakan berita untuk mahasiswa.ppsx
vIDEO kelayakan berita untuk mahasiswa.ppsxvIDEO kelayakan berita untuk mahasiswa.ppsx
vIDEO kelayakan berita untuk mahasiswa.ppsx
 
PPT PERUBAHAN LINGKUNGAN MATA PELAJARAN BIOLOGI KELAS X.pptx
PPT PERUBAHAN LINGKUNGAN MATA PELAJARAN BIOLOGI KELAS X.pptxPPT PERUBAHAN LINGKUNGAN MATA PELAJARAN BIOLOGI KELAS X.pptx
PPT PERUBAHAN LINGKUNGAN MATA PELAJARAN BIOLOGI KELAS X.pptx
 
1.3.a.3. Mulai dari Diri - Modul 1.3 Refleksi 1 Imajinasiku tentang Murid di ...
1.3.a.3. Mulai dari Diri - Modul 1.3 Refleksi 1 Imajinasiku tentang Murid di ...1.3.a.3. Mulai dari Diri - Modul 1.3 Refleksi 1 Imajinasiku tentang Murid di ...
1.3.a.3. Mulai dari Diri - Modul 1.3 Refleksi 1 Imajinasiku tentang Murid di ...
 
PEMANASAN GLOBAL - MATERI KELAS X MA.pptx
PEMANASAN GLOBAL - MATERI KELAS X MA.pptxPEMANASAN GLOBAL - MATERI KELAS X MA.pptx
PEMANASAN GLOBAL - MATERI KELAS X MA.pptx
 
Keterampilan menyimak kelas bawah tugas UT
Keterampilan menyimak kelas bawah tugas UTKeterampilan menyimak kelas bawah tugas UT
Keterampilan menyimak kelas bawah tugas UT
 
Latsol TWK Nasionalisme untuk masuk CPNS
Latsol TWK Nasionalisme untuk masuk CPNSLatsol TWK Nasionalisme untuk masuk CPNS
Latsol TWK Nasionalisme untuk masuk CPNS
 
MODUL 1 Pembelajaran Kelas Rangkap-compressed.pdf
MODUL 1 Pembelajaran Kelas Rangkap-compressed.pdfMODUL 1 Pembelajaran Kelas Rangkap-compressed.pdf
MODUL 1 Pembelajaran Kelas Rangkap-compressed.pdf
 
PELAKSANAAN + Link-Link MATERI Training_ "Effective INVENTORY & WAREHOUSING...
PELAKSANAAN  + Link-Link MATERI Training_ "Effective INVENTORY &  WAREHOUSING...PELAKSANAAN  + Link-Link MATERI Training_ "Effective INVENTORY &  WAREHOUSING...
PELAKSANAAN + Link-Link MATERI Training_ "Effective INVENTORY & WAREHOUSING...
 
PPT Penjumlahan Bersusun Kelas 1 Sekolah Dasar
PPT Penjumlahan Bersusun Kelas 1 Sekolah DasarPPT Penjumlahan Bersusun Kelas 1 Sekolah Dasar
PPT Penjumlahan Bersusun Kelas 1 Sekolah Dasar
 
Modul Ajar Pendidikan Pancasila Kelas 5 Fase C
Modul Ajar Pendidikan Pancasila Kelas 5 Fase CModul Ajar Pendidikan Pancasila Kelas 5 Fase C
Modul Ajar Pendidikan Pancasila Kelas 5 Fase C
 
Contoh Laporan Observasi Pembelajaran Rekan Sejawat.pdf
Contoh Laporan Observasi Pembelajaran Rekan Sejawat.pdfContoh Laporan Observasi Pembelajaran Rekan Sejawat.pdf
Contoh Laporan Observasi Pembelajaran Rekan Sejawat.pdf
 
Modul Projek - Batik Ecoprint - Fase B.pdf
Modul Projek  - Batik Ecoprint - Fase B.pdfModul Projek  - Batik Ecoprint - Fase B.pdf
Modul Projek - Batik Ecoprint - Fase B.pdf
 
Sosialisasi PPDB SulSel tahun 2024 di Sulawesi Selatan
Sosialisasi PPDB SulSel tahun 2024 di Sulawesi SelatanSosialisasi PPDB SulSel tahun 2024 di Sulawesi Selatan
Sosialisasi PPDB SulSel tahun 2024 di Sulawesi Selatan
 

Tugas Sorting Algoritma - Yoki satria

  • 1. Metode Sorting dan Aplikasinya Tugas Kuliah Algoritma dan Struktur Data Yoki Satria Manajemen Informatika Politeknik Negeri Lampung Bandar Lampung, Lampung yoki.satria1996@gmail.com Algoritma sorting Dalam Ilmu Komputer, Algoritma Sorting merupakan algoritma yang menempatkan elemen list pada urutan tertentu. Urutan yang paling sering digunakan ialah urutan numerikal dan urutan lexicographical. Sorting yang efisien sangat dibutuhkan untuk mengoptimisasi penggunaan dari algoritma lain seperti pencarian dan penggabungan yang membutuhkan list terurut untuk berjalan dengan sempurna, yang juga sering digunakan untuk Canonicalisisasi data dan menghasilkan output yang dapat dibaca manusia. Untuk lebih lanjutnya, output harus melengkapi dua syarat ini: 1. Output merupakan urutan yang tidak menurut (nondecreasing) (setiap elemen tidak lebih kecil dari elemen sebelumnya menurut dari urutan keseluruhan yang diinginkan. 2. Output merupakan permutasi (pengurutan kembali) dari inputan yang diberikan. Sejak permulaan komputasi, masalah pengurutan ini telah menarik penelitian yang serius, mungkin dikarenakan kerumitan dari penyelesaian secara efisien disamping mudah, dan dengan statemen yang kita mengerti. Sebagai contoh, bubble sort pertama sekali ditemukan pada tahun 1956.[1] Walaupun banyak yang memperkirakan masalahnya telah terselesaikan, banyak algoritma sorting baru yang masih ditemukan samap sekarang (sebagai contoh, Library Sort yang baru dipublikasikan pertama sekali pada tahun 2006). Algoritma sorting sangat umum pada setiap kelas pengenalan bidang Ilmu Komputer, dimana banyaknya algoritma untuk masalah ini menyediakan pengenalan awal mengenai banyaknya konsep algoritma inti, seperti Notasi Big O, Algoritma Pembagi, Struktur Data, Algoritma Acak, Analisa Best, Worst, Average Case, Running Time Calculation, dan Batas Atas dan Bawah. I. Pengertian sorting dan jenis-jenis sorting II. Sorting adalah sebuah proses merangkai benda dalam urutan tertentu dan/atau dalam himpunan yang berbeda, dan oleh karena itu dia memiliki dua arti umum yang berbeda. 1.Pengurutan : merangkai benda yang sejenis, sekelas, dll, dalam urutan yang teratur. 2.Kategorisasi : pengelompokan dan pemberian label kepada benda dengan sifat yang serupa. Mensortir informasi atau data Salah satu cara sorting yang penting adalah mengatur benda informasi dalam urutan alfabetik sesuai dengan hubungan penyusunan yang telah didefinisikan sebelumnya, misal ketika seseorang mensortir buku-buku di perpustakaan berdasarkan judul, subyek atau penulis (Biasanya diurutkan dalam urutan membesar). Urutan yang dihasilkan dapat membesar atau mengecil, karena biasanya seluruh sorting adalah sorting angka. Sorting dalam ilmu komputer adalah salah satu subjek riset yang paling luas karena kebutuhan mempercepat operasi dalam ribuan atau jutaan data selama operasi pencarian. Tujuan utama mensortir informasi adalah untuk mengoptimalkan tugas tertentu. Pada umumnya, ada dua cara pengelompokan informasi: berdasarkan kategori, misal sebuah katalog belanja di mana barang disusun bersama di bawah judul seperti ‘rumah’, ‘olah raga’, ‘pakaian wanita’, dll. dan berdasarkan intensitas seperti harga, misal dari yang termurah sampai yang termahal. Jenis-jenis algoritma penjadwalan adalah sebagai berikut : 1. Nonpreemptive, menggunakan konsep : a. FIFO (First In First Out) atau FCFS (First Come First Serve) b. SJF (Shortest Job First) c. HRN (Highest Ratio Next) d. MFQ (Multiple Feedback Queues)
  • 2. 2. Preemptive, menggunakan konsep : a. RR (Round Robin) b. SRF (Shortest Remaining First) c. PS (Priority Schedulling) d. GS (Guaranteed Schedulling) Klasifikasi lain selain berdasarkan dapat/tidaknya suatu proses diambil secara paksa adalah klasifikasi berdasarkan adanya prioritas di proses-proses, yaitu : 1. Algoritma penjadwalan tanpa berprioritas. 2. Algoritma penjadwalan berprioritas, terdiri dari : a. Berprioritas static b. Berprioritas dinamis Algoritma Nonpreemptive 1. First In first Out (FIFO) First In First Out (FIFO) merupakan penjadwalan tidak berprioritas. FIFO adalah penjadwalan paling sederhana, yaitu proses-proses diberi jatah waktu pemroses berdasarkan waktu kedatangan. Pada saat proses mendapat jatah waktu pemroses, proses dijalankan sampai selesai. Penilaian penjadwalan ini berdasarkan kriteria optimasi : Adil, dalam arti resmi (proses yang datang duluan akan dilayani lebih dulu), tapi dinyatakan tidak adil karena job-job yang perlu waktu lama membuat job-job pendek menunggu. Job-job yang tidak penting dapat membuat job-job penting menunggu lama. Efisiensi, sangat efisien. Waktu tanggap sangat jelek, tidak cocok untuk sistem interaktif apalagi untuk sistem waktu nyata. Turn around time kurang baik. Throughtput kurang baik. FIFO jarang digunakan secara mandiri, tetapi dikombinasikan dengan skema lain. Baik untuk sistem batch yang sangat jarang berinteraksi dengan pemakai. Contoh : aplikasi analisis numerik, maupun pembuatan tabel. Sangat tidak baik (tidak berguna) untuk sistem interaktif, karena tidak memberi waktu tanggap yang baik. Tidak dapat digunakan untuk sistem waktu nyata (real-time applications). 2. Shortest Job First (SJF) Penjadwalan ini mengasumsikan waktu berjalannya proses sampai selesai telah diketahui sebelumnya. Mekanismenya adalah menjadwalkan proses dengan waktu jalan terpendek lebih dulu sampai selesai, sehingga memberikan efisiensi yang tinggi dan turn around time rendah dan penjadwalannya tak berprioritas. Contoh : Terdapat empat proses (job) yaitu A,B,C,D dengan waktu jalannya masing-masing adalah 8,4,4 dan 4 menit. Apabila proses-proses tersebut dijalankan, maka turn around time untuk A adalah 8 menit, untuk B adalah 12, untuk C adalah 16 dan untuk D adalah 20. Apabila keempat proses tersebut menggunakan penjadwalan shortest job fisrt, maka turn around time untuk B adalah 4, untuk C adalah 8, untuk D adalah 12 dan untuk A adalah 20. Karena SJF selalu memperhatikan rata-rata waktu respon terkecil, maka sangat baik untuk proses interaktif. Umumnya proses interaktif memiliki pola, yaitu menunggu perintah, menjalankan perintah, menunggu perintah dan menjalankan perintah, begitu seterusnya. Masalah yang muncul adalah tidak mengetahui ukuran job saat job masuk. Untuk mengetahui ukuran job adalah dengan membuat estimasi berdasarkan kelakukan sebelumnya. Prosesnya tidak datang bersamaan, sehingga penetapannya harus dinamis. Penjadwalan ini jarang digunakan karena merupakan kajian teoritis untuk pembandingan turn around time. 3. Highest Ratio Next (HRN) Highest Ratio Next merupakan strategi penjadwalan dengan prioritas proses tidak hanya berdasarkan fungsi waktu layanan tetapi juga jumlah waktu tunggu proses. Begitu proses mendapat jatah pemroses, proses berjalan sampai selesai. Prioritas dinamis HRN dihitung berdasarkan rumus : Prioritas = (waktu tunggu + waktu layanan)/ waktu layanan Karena waktu layanan muncul sebagai pembagi, maka job lebih pendek berprioritas lebih baik, karena waktu tunggu sebagai pembilang maka proses yang telah menunggu lebih lama juga mempunyai kesempatan lebih bagus. Disebut HRN, karena waktu tunggu ditambah waktu layanan adalah waktu tanggap, yang berarti waktu tanggap tertinggi yang harus dilayani. . Multiple Feedback Queues (MFQ) Merupakan penjadwalan berprioritas dinamis. Penjadwalan ini untuk mencegah (mengurangi) banyaknya swappingdengan proses-proses yang sangat banyak menggunakan pemroses (karena menyelesaikan tugasnya memakan waktu lama) diberi jatah waktu (jumlah kwanta) lebih banyak dalam satu waktu. Penjadwalan ini juga menghendaki kelas-kelas prioritas bagi proses-proses yang ada. Kelas tertinggi berjalan selama satu kwanta, kelas berikutnya berjalan selama dua kwanta, kelas berikutnya berjalan empat kwanta, dan seterusnya. Ketentuan yang berlaku adalah sebagai berikut : Jalankan proses pada kelas tertinggi. ika proses menggunakan seluruh kwanta yang dialokasikan, maka diturunkan kelas prioritasnya. Proses yang masuk untuk pertama kali ke sistem langsung diberi kelas tertinggi. Mekanisme ini mencegah proses yang perlu berjalan lama swapping berkali-kali dan mencegah proses-proses interaktif yang singkat harus menunggu lama. Using the Template After the text edit has been completed, the paper is ready for the template. Duplicate the template file by using the Save As command, and use the naming convention prescribed by your conference for the name of your paper. In this newly created file, highlight all of the contents and import your prepared text file. You are now ready to style your paper; use the scroll down window on the left of the MS Word Formatting toolbar. A. Authors and Affiliations Kelemahan : Implementasi mekanisme prioritas dinamis lebih kompleks dan
  • 3. mempunyai overhead lebih besar. Overhead ini diimbangi dengan peningkatan daya tanggap sistem. Contoh penjadwalan berprioritas : Proses-proses yang sangat banyak operasi masukan/keluaran menghabiskan kebanyakan waktu menunggu selesainya operasinya masukan/keluaran. Proses-proses ini diberi prioritas sangat tinggi sehingga begitu proses Memerlukan pemroses segera diberikan, proses akan segera memulai permintaan masukan/keluaran berikutnya sehingga menyebabkan proses blocked menunggu selesainya operasi masukan/keluaran. Dengan demikian pemroses dapat dipergunakan proses-proses lain. Proses-proses I/O berjalan paralel bersama proses-proses lain yang benar-benar memerlukan pemroses, sementara proses-proses I/O itu menunggu selesainya operasi DMA. Proses-proses yang sangat banyak operasi I/O-nya, kalau harus JENIS-JENIS SORTING, CONTOH DAN APLIKASINYA 1) BUBBLE SORT Bubble sort adalah salah satu metode sorting atau mengurutkan dari data terkecil ke data terbesar ataupun dengan cara membandingkan elemen kesatu dengan elemen yang selanjutnya. Contoh Penggunaannya : I. 10 66 5 7 9 8 10 5 66 7 9 8 5 10 66 7 9 8 II. 5 10 66 7 9 8 5 10 7 66 9 8 5 7 10 66 9 8 III. menunggu lama untuk memakai pemroses (karena prioritas rendah) hanya akan membebani memori, karena harus disimpan tanpa perlu proses-proses itu dimemori karena tidak selesai-selesai menunggu operasi masukan dan menunggu jatah pemroses. 5 7 10 66 9 8 5 7 10 66 8 9 5 7 10 8 66 9 5 7 8 10 66 9 IV. 5 7 8 10 66 9 5 7 8 10 9 66 5 7 8 9 10 66 Hasilnya : 5 7 8 9 10 66 Aplikasinya :  Prosedur Bubble Sort void bubble_sort(){ for(int i=1;i<n;i++){ for(int j=n-1;j>=i;j--){ if(data[j]<data[j-1]) tukar(&data[j],&data[j-1]); //ascending } } } 2) SELECTION SORT Jika anda diminta untuk membuat algoritma sorting tersendiri, anda mungkin akan menemukan sebuah algoritma yang mirip dengan selection sort. Layaknya insertion sort, algoritma ini sangat rapat dan mudah untuk diimplementasikan. Mari kita kembali menelusuri bagaimana algoritma ini berfungsi terhadap satu paket kartu. Asumsikan bahwa kartu tersebut akan diurutkan secara ascending. Pada awalnya, kartu tersebut akan disusun secara linier pada sebuah meja dari kiri ke kanan, dan dari atas ke bawah. Pilih nilai kartu yang paling Contoh penggunaannya : Posisi 0 1 2 3 4 5 I. 10 66 5 7 9 8 Pembanding Posisi 10 < 66 0 10 > 5 (Tukar Idx) 2 5 < 7 2 5 < 9 2 5< 8 2 Posisi 0 1 2 3 4 5
  • 4. II. 5 66 10 7 9 8 Pembanding Posisi 66 > 10 (Tukar Idx) 2 10 > 7 (Tukar Idx) 3 7 < 9 3 7 < 8 3 Posisi 0 1 2 3 4 5 III. 5 7 10 66 9 8 Pembanding Posisi 10 < 66 2 10 > 9 (Tukar Idx) 4 7 > 9 (Tukar Idx) 5 Posisi 0 1 2 3 4 5 IV. 5 7 8 66 9 10 Pembanding Posisi 66 > 9 (Tukar Idx) 4 9 < 10 4 Posisi 0 1 2 3 4 5 V. 5 7 8 66 9 10 Pembanding Posisi 66 > 10 (Tukar Idx) 5 Hasilnya : 5 7 8 9 10 66 Aplikasinya :  Prosedur Selection Sort void selection_sort(){ for(int i=0;i<n-1;i++){ pos = i; for(int j=i+1;j<n;j++){ if(data[j] < data[pos]) pos = j; //ascending } if(pos != i) tukar(&data[pos],&data[i]); } } 1) INSERTION SORT Salah satu algoritma sorting yang paling sederhana adalah insertion sort. Ide dari algoritma ini dapat dianalogikan seperti mengurutkan kartu. Penjelasan berikut ini menerangkan bagaimana algoritma insertion sort bekerja dalam pengurutan kartu. Anggaplah anda ingin mengurutkan satu set kartu dari kartu yang bernilai paling kecil hingga yang paling besar. Seluruh kartu diletakkan pada meja, sebutlah meja ini sebagai meja pertama, disusun dari kiri ke kanan dan atas ke bawah. Kemudian kita mempunyai meja yang lain, meja kedua, dimana kartu yang diurutkan akan diletakkan. Ambil kartu pertama yang terletak pada pojok kiri atas meja pertama dan letakkan pada meja kedua. Ambil kartu kedua dari meja pertama, bandingkan dengan kartu yang berada pada meja kedua, kemudian letakkan pada urutan yang sesuai setelah perbandingan. Proses tersebut akan berlangsung hingga seluruh kartu pada meja pertama telah diletakkan berurutan pada meja kedua. Algoritma insertion sort pada dasarnya memilah data yang akan diurutkan menjadi dua bagian, yang belum diurutkan (meja pertama) dan yang sudah diurutkan (meja kedua). Elemen pertama diambil dari bagian array yang belum diurutkan dan kemudian diletakkan sesuai posisinya Contoh penggunaannya : I. Posisi 0 1 2 3 4 5 10 66 5 7 9 8 Temp Cek Geser 66 Temp > 10? - II. Posisi 0 1 2 3 4 5 10 66 5 7 9 8 Temp Cek Geser 5 Temp < 41 Geser data ke-1 ke posisi 2 5 Temp < 10 Geser data ke-0 ke posisi 1 III. Posisi 0 1 2 3 4 5 5 10 66 7 9 8 Temp Cek Geser 7 Temp < 41 Geser data ke-2 ke posisi 3 7 Temp < 10 Geser data ke-1 ke posisi 2 7 Temp > 5 - IV. Posisi 0 1 2 3 4 5 5 7 10 66 9 8 Temp Cek Geser 9 Temp < 41 Geser data ke-3 ke posisi 4 9 Temp < 10 Geser data ke-2 ke posisi 3 9 Temp > 7 - 9 Temp > 5 -
  • 5. V. Posisi 0 1 2 3 4 5 5 7 9 10 66 8 Temp Cek Geser 8 Temp < 41 Geser data ke-4 ke posisi 5 8 Temp < 10 Geser data ke-3 ke posisi 4 8 Temp < 9 Geser data ke-2 ke posisi 3 8 Temp > 7 - 8 Temp > 5 - 1) MERGE SORT Sebelum mendalami algoritma merge sort, mari kita mengetahui garis besar dari konsep divide and conquer karena merge sort mengadaptasi pola tersebut. Beberapa algoritma mengimplementasikan konsep rekursi untuk menyelesaikan permasalahan. Permasalahan utama kemudian dipecah menjadi sub-masalah, kemudian solusi dari sub-masalah akan membimbing menuju solusi permasalahan utama. Pada setiap tingkatan rekursi, pola tersebut terdiri atas 3 langkah. 1. Divide Memilah masalah menjadi sub masalah 2. Conquer Selesaikan sub masalah tersebut secara rekursif. Jika sub- masalah tersebut cukup ringkas dan sederhana, pendekatan penyelesaian secara langsung akan lebih efektif 3. Kombinasi Mengkombinasikan solusi dari sub-masalah, yang akan membimbing menuju penyelesaian atas permasalahan utama Memahami Merge Sort Seperti yang telah dijelaskan sebelumnya, Merge sort menggunakan pola divide and conquer. Dengan hal ini deskripsi dari algoritma dirumuskan dalam 3 langkah berpola divide-and-conquer. Berikut menjelaskan langkah kerja dari Merge sort. 1. Divide Memilah elemen – elemen dari rangkaian data menjadi dua bagian. 2. Conquer Conquer setiap bagian dengan memanggil prosedur merge sort secararekursif 3. Kombinasi Mengkombinasikan dua bagian tersebut secara rekursif untuk mendapatkan rangkaian data berurutan Proses rekursi berhenti jika mencapai elemen dasar. Hal ini terjadi bilamana bagian yang akan diurutkan menyisakan tepat satu elemen. Sisa pengurutan satu elemen tersebut menandakan bahwa bagian tersebut telah terurut sesuai rangkaian. 2) QUICKSORT II. 1] dan A[q+1…r] dimana setiap elemen A[p…q-1] adalah kurang dari atau sama dengan A[q] dan setiap elemen pada A[q+1…r] adalah lebih besar atau sama dengan elemen pada A[q]. A[q] disebut sebagai elemen pivot. Perhitungan pada elemen q merupakan salah satu bagian dari prosedur pemisahan. 2. Conquer Mengurutkan elemen pada sub-rangkaian secara rekursif Pada algoritma quicksort, langkah ”kombinasi” tidak di lakukan karena telah terjadi pengurutan elemen – elemen pada sub-array. DAFTAR PUSTAKA  https://liliskriyaningsih.wordpress.com  http://id.wikipedia.org/wiki/Algoritma_sorting  http://zeftaadetya.blogspot.com/2014/02/pengertia n-bubble-sort-dan-contoh.html
  • 6. V. Posisi 0 1 2 3 4 5 5 7 9 10 66 8 Temp Cek Geser 8 Temp < 41 Geser data ke-4 ke posisi 5 8 Temp < 10 Geser data ke-3 ke posisi 4 8 Temp < 9 Geser data ke-2 ke posisi 3 8 Temp > 7 - 8 Temp > 5 - 1) MERGE SORT Sebelum mendalami algoritma merge sort, mari kita mengetahui garis besar dari konsep divide and conquer karena merge sort mengadaptasi pola tersebut. Beberapa algoritma mengimplementasikan konsep rekursi untuk menyelesaikan permasalahan. Permasalahan utama kemudian dipecah menjadi sub-masalah, kemudian solusi dari sub-masalah akan membimbing menuju solusi permasalahan utama. Pada setiap tingkatan rekursi, pola tersebut terdiri atas 3 langkah. 1. Divide Memilah masalah menjadi sub masalah 2. Conquer Selesaikan sub masalah tersebut secara rekursif. Jika sub- masalah tersebut cukup ringkas dan sederhana, pendekatan penyelesaian secara langsung akan lebih efektif 3. Kombinasi Mengkombinasikan solusi dari sub-masalah, yang akan membimbing menuju penyelesaian atas permasalahan utama Memahami Merge Sort Seperti yang telah dijelaskan sebelumnya, Merge sort menggunakan pola divide and conquer. Dengan hal ini deskripsi dari algoritma dirumuskan dalam 3 langkah berpola divide-and-conquer. Berikut menjelaskan langkah kerja dari Merge sort. 1. Divide Memilah elemen – elemen dari rangkaian data menjadi dua bagian. 2. Conquer Conquer setiap bagian dengan memanggil prosedur merge sort secararekursif 3. Kombinasi Mengkombinasikan dua bagian tersebut secara rekursif untuk mendapatkan rangkaian data berurutan Proses rekursi berhenti jika mencapai elemen dasar. Hal ini terjadi bilamana bagian yang akan diurutkan menyisakan tepat satu elemen. Sisa pengurutan satu elemen tersebut menandakan bahwa bagian tersebut telah terurut sesuai rangkaian. 2) QUICKSORT II. 1] dan A[q+1…r] dimana setiap elemen A[p…q-1] adalah kurang dari atau sama dengan A[q] dan setiap elemen pada A[q+1…r] adalah lebih besar atau sama dengan elemen pada A[q]. A[q] disebut sebagai elemen pivot. Perhitungan pada elemen q merupakan salah satu bagian dari prosedur pemisahan. 2. Conquer Mengurutkan elemen pada sub-rangkaian secara rekursif Pada algoritma quicksort, langkah ”kombinasi” tidak di lakukan karena telah terjadi pengurutan elemen – elemen pada sub-array. DAFTAR PUSTAKA  https://liliskriyaningsih.wordpress.com  http://id.wikipedia.org/wiki/Algoritma_sorting  http://zeftaadetya.blogspot.com/2014/02/pengertia n-bubble-sort-dan-contoh.html