0% menganggap dokumen ini bermanfaat (0 suara)
2 tayangan12 halaman

Algoritma Pengurutan: Bubble, Insertion, Selection

Dokumen ini membahas tentang algoritma pengurutan (sorting) dalam pemrograman, termasuk tiga jenis algoritma yaitu Bubble Sort, Insertion Sort, dan Selection Sort. Setiap algoritma dijelaskan dengan cara kerja dan contoh kode dalam PHP. Bubble Sort adalah yang paling sederhana namun lambat, sedangkan Insertion Sort dan Selection Sort memiliki metode yang berbeda untuk mengurutkan data.

Diunggah oleh

Agung Pradnya
Hak Cipta
© All Rights Reserved
Kami menangani hak cipta konten dengan serius. Jika Anda merasa konten ini milik Anda, ajukan klaim di sini.
Format Tersedia
Unduh sebagai PPT, PDF, TXT atau baca online di Scribd
0% menganggap dokumen ini bermanfaat (0 suara)
2 tayangan12 halaman

Algoritma Pengurutan: Bubble, Insertion, Selection

Dokumen ini membahas tentang algoritma pengurutan (sorting) dalam pemrograman, termasuk tiga jenis algoritma yaitu Bubble Sort, Insertion Sort, dan Selection Sort. Setiap algoritma dijelaskan dengan cara kerja dan contoh kode dalam PHP. Bubble Sort adalah yang paling sederhana namun lambat, sedangkan Insertion Sort dan Selection Sort memiliki metode yang berbeda untuk mengurutkan data.

Diunggah oleh

Agung Pradnya
Hak Cipta
© All Rights Reserved
Kami menangani hak cipta konten dengan serius. Jika Anda merasa konten ini milik Anda, ajukan klaim di sini.
Format Tersedia
Unduh sebagai PPT, PDF, TXT atau baca online di Scribd

Dosen Pengampu :

Dr. LASER NARINDRO, ST, MMSI


ALGORITMA DAN PEMROGRAMAN
ITB STIKOM BALI
 Pengurutan (Sorting) merupakan sebuah algoritma yang
digunakan untuk mengurutkan data dari yang terendah
atau sebaliknya. Untuk tingkat pemula, biasanya jenis
sorting yang digunakan adalah bubble sort karena
penggunaannya sangat sederhana dan mudah namun
memakan waktu yang lama jika data yang ingin di
urutkan banyak.
 Jenis jenis algoritma Pengurutan (Sorting):
a. Bubble Sort
b. Insertion Sort
c. Selection Sort
Bubble sort atau pengurutan secara gelembung ini
merupakan algoritma yang sangat sederhana. Algoritma
ini dilakukan dengan cara membandingkan masing
masing data dalam suatu array secara berpasangan, lalu
menukar data tersebut jika di perlukan, dan diulangi
hingga data tersebut sudah tidak bisa ditukar lagi.
Berikut adalah gambaran bubble sort :
<?php
// function for bubble sort
function bubblesort(&$Array, $n) {
$temp;
for($i=0; $i<$n; $i++) {
for($j=0; $j<$n-$i-1; $j++) {
if($Array[$j]>$Array[$j+1]) {
$temp = $Array[$j];
$Array[$j] = $Array[$j+1];
$Array[$j+1] = $temp;
}
}
}
}
// function to print array
function PrintArray($Array, $n) {
for ($i = 0; $i < $n; $i++)
echo $Array[$i]." ";
echo "\n";
}
// test the code
$MyArray = array(1, 10, 23, 50, 4, 9, -4);
$n = sizeof($MyArray);
echo "sebelum diurutkan\n";
PrintArray($MyArray, $n);
bubblesort($MyArray, $n);
echo "\nSetelah diurutkan\n";
PrintArray($MyArray, $n);
?>
Insertion sort merupakan algoritma yang
membagi elemen menjadi 2, satu elemen untuk
yang sudah diurutkan dan satu lagi untuk data
yang belum di urutkan kemudian diletakkan
pada tempat yang seharusnya. Cara ini
dilakukan berulang kali hingga semua data
telah terurut. Berikut gambaran insertion sort:
<?php

//Display Array
function display_array($array){
$message = "";
$len = count($array);
for($i=0;$i<$len;$i++){
$val = $array[$i];
$message .= $val;
$message .= ($i==$len-1)? ".":",";
}
return $message;
}
//Insertion Sort
function insertionSort($array) {
$size = count($array);
for ($step = 1; $step < $size; $step++) {
$key = $array[$step];
$j = $step-1;
// Compare key with each element on the left of it until an element smaller than
// it is found.
// For descending order, change key<array[j] to key>array[j].
while ($j >= 0 && $key < $array[$j]) {
$array[$j + 1] = $array[$j];
--$j;
}
$array[$j + 1] = $key;
}
return $array;
}
$array = [20,3,22,4,5,11,43,42,24,54];
echo "angka awal:\n".display_array($array)."\n";
$display_array = insertionSort($array);
echo "setelah diurutkan:\n".display_array($display_array)."\n";

?>
Selection sort dilakukan
dengan cara memilih
data/elemen yang paling
rendah, lalu ditukar dengan
elemen/data ke-i. Nilai i
dimulai dari 1 ke n dan n
adalah jumlah panjang data
dikurang 1. Berikut gambaran
selection sort :
<?php
// function for selection sort
function selectionsort(&$Array, $n) {
for($i=0; $i<$n; $i++) {
$min_idx = $i;

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


if($Array[$j] < $Array[$min_idx])
{$min_idx = $j;}
}

$temp = $Array[$min_idx];
$Array[$min_idx] = $Array[$i];
$Array[$i] = $temp;
}
}
// function to print array
function PrintArray($Array, $n) {
for ($i = 0; $i < $n; $i++)
echo $Array[$i]." ";
echo "\n";
}

// test the code


$MyArray = array(1, 10, 23, 50, 4, 9, -4);
$n = sizeof($MyArray);
echo "Angka Awal\n";
PrintArray($MyArray, $n);

selectionsort($MyArray, $n);
echo "\nSetelah Diurutkan\n";
PrintArray($MyArray, $n);
?>

Anda mungkin juga menyukai