• Tidak ada hasil yang ditemukan

Laporan Praktikum Sorting (Selection Sort & Insertion Sort )

N/A
N/A
Mitha Zalina Ramadhany

Academic year: 2024

Membagikan "Laporan Praktikum Sorting (Selection Sort & Insertion Sort ) "

Copied!
13
0
0

Teks penuh

(1)

LAPORAN PRAKTIKUM

Sorting (Selection Sort & Insertion Sort )

DISUSUN OLEH :

Mitha Zalina Ramadhany NIM : 6304221424

DOSEN PENGAMPU : Lidya Wati M.Kom NIP : 198908222014042001

Matkul :

Struktur Data dan Algoritma Lanjut

POLITEKNIK NEGERI BENGKALIS JURUSAN TEKNIK INFORMATIKA

REKAYASA PERANGKAT LUNAK

2023/2024

(2)

1. Selection Sort Secara Manual

Memilih lalu mengurutkan “22, 2, 90, 25, 20, 30, 6, 3” berdasarkan DESCENDING

2. Insertion Sort Secara Manual

Menambah lalu mengurutkan “7, 3, 9, 2, 12, 10, 1, 5” berdasarkan

DESCENDING

(3)

3. Selection Sort Secara Manual

Memilih lalu mengurutkan “saya suka situ sebab situ suka saya”

berdasarkan ASCENDING

4. Insertion Sort Secara Manual

Menambah lalu mengurutkan “saya suka situ sebab situ suka saya”

berdasarkan DESCENDING

(4)

1. Percobaan 2 : Selection Sort Codingan nya:

//MITHA ZALINA RAMADHANY //RPL 3A

package Sorting;

import java.io.BufferedReader;

import java.io.InputStreamReader;

public class SelectionSortMitha { static int[] array;

public static void main(String[] args) {

System.out.print("Masukkan Ukuran Array yang diinginkan : ");

int ukuran=inputdata();

inputarray(ukuran);

System.out.println("Isi Array Sebelum Terurut = ");

bacaarray();

selec(array);

System.out.println("Isi Array Setelah Terurut = ");

bacaarray();

}

static void inputarray(int ukuran) {

System.out.println("Masukkan Nilai yang diinginkan = ");

array=new int[ukuran];

for (int i=0; i<ukuran; i++) {

System.out.print("Array "+i+" =");

array[i]=inputdata();

} }

static void bacaarray() {

int ukuran= array.length;

for (int i=0; i<ukuran; i++) {

System.out.println("Nilai Array ke ["+i+"] ="+array[i]);

} }

public static int[] selec(int[] array) {

int ukuran= array.length;

while(ukuran>0) {

int max=0;

int i;

for (i=1; i<ukuran; i++) {

if (array[max]<array[i]) max=i;

(5)

}

int temp=array[max];

array[max]=array[ukuran-1];

array[ukuran-1]=temp;

ukuran--;

}

return array;

}

static int inputdata() {

BufferedReader a=new BufferedReader(new InputStreamReader(System.in));

String kata=null;

try{

kata=a.readLine();

}catch (Exception e) {

e.toString();

}

int nilai=Integer.valueOf(kata).intValue();

return nilai;

} }

Hasil Run:

(6)

2. Percobaan 3 : Insertion Sort Codingannya:

//MITHA ZALINA RAMADHANY //RPL 3A

package Sorting;

import java.io.BufferedReader;

import java.io.InputStreamReader;

public class InsertionSortMitha { static int[] array;

public static void main(String[] args) {

System.out.print("Masukkan Ukuran Array yang diinginkan : ");

int ukuran=inputdata();

inputarray(ukuran);

System.out.println("Isi Array Sebelum Terurut = ");

bacaarray();

insertion(array);

System.out.println("Isi Array Setelah Terurut = ");

bacaarray();

}

static void inputarray(int ukuran) {

System.out.println("Masukkan Nilai yang diinginkan = ");

array=new int[ukuran];

for (int i=0; i<ukuran; i++) {

System.out.print("Array "+i+" =");

array[i]=inputdata();

} }

static void bacaarray() {

int ukuran= array.length;

for (int i=0; i<ukuran; i++) {

System.out.println("Nilai Array ke ["+i+"] ="+array[i]);

} }

static int[] insertion(int[] array) {

int ukuran= array.length;

int max, j;

int i=1;

while(i<ukuran) {

max=array[i];

for (j=i; j>0; j--) {

(7)

if (max<array[j-1]) array[j]=array[j-1];

else

break;

}

array[j]=max;

i++;

}

return array;

}

static int inputdata() {

BufferedReader a=new BufferedReader(new InputStreamReader(System.in));

String kata=null;

try{

kata=a.readLine();

}catch (Exception e) {

e.toString();

}

int nilai=Integer.valueOf(kata).intValue();

return nilai;

} }

Hasil Run:

(8)

3. Percobaan untuk inputan String Selection Sort “SAYA SUKA SITU SEBAB SITU SUKA SAYA” Berdasarkan ASCENDING

Codingan:

//MITHA ZALINA RAMADHANY //RPL 3A

package Sorting;

import java.util.Scanner;

public class StringSelectionSortMitha { static String[] array;

public static void main(String[] args) {

System.out.print("Masukkan Ukuran Array yang diinginkan =

");

int ukuran = Integer.parseInt(inputdata());

inputarray(ukuran);

System.out.println("Isi Array sebelum terurut : ");

bacaarray();

selec(array);

System.out.println("Isi Array Setelah Terurut secara ascending:");

bacaarray();

}

static void inputarray(int ukuran) { array = new String[ukuran];

for (int i = 0; i < ukuran; i++) {

System.out.print("array " + i + " : ");

array[i] = inputdata();

} }

static void bacaarray() { int ukuran = array.length;

for (int i = 0; i < ukuran; i++) {

System.out.println("nilai array ke [" + i + "] :" + array[i]);

} }

public static void selec(String[] array) { int ukuran = array.length;

for (int i = 0; i < ukuran - 1; i++) { int minIndex = i;

for (int j = i + 1; j < ukuran; j++) {

if (array[j].compareTo(array[minIndex]) < 0) { minIndex = j;

}

(9)

}

String temp = array[minIndex];

array[minIndex] = array[i];

array[i] = temp;

} }

static String inputdata() {

Scanner input = new Scanner(System.in);

return input.nextLine();

} }

(10)

Hasil Run:

(11)

4. Percobaan untuk inputan String Insertion Sort “SAYA SUKA SITU SEBAB SITU SUKA SAYA” Berdasarkan DESCENDING

//MITHA ZALINA RAMADHANY // RPL 3A

package Sorting;

import java.io.BufferedReader;

import java.io.InputStreamReader;

public class StringInsertionSortMitha { static String[] array;

public static void main(String[] args) {

System.out.print("Masukkan Ukuran Array yang diinginkan =

");

int ukuran = Integer.parseInt(inputdata());

inputarray(ukuran);

System.out.println("Isi Array Aebelum terurut :");

bacaarray();

insertion(array);

System.out.println("Isi Array Aetelah terurut :");

bacaarray();

}

static void inputarray(int ukuran) {

System.out.println("Masukkan Nilai yang diinginkan :");

array = new String[ukuran];

for (int i = 0; i < ukuran; i++) {

System.out.print("array " + i + " : ");

array[i] = inputdata();

} }

static void bacaarray() { int ukuran = array.length;

for (int i = 0; i < ukuran; i++) {

System.out.println("Nilai Array ke [" + i + "] :" + array[i]);

} }

static void insertion(String[] array) { int ukuran = array.length;

for (int i = 1; i < ukuran; i++) { String key = array[i];

int j = i - 1;

while (j >= 0 && key.compareTo(array[j]) < 0) { array[j + 1] = array[j];

j--;

}

(12)

array[j + 1] = key;

} }

static String inputdata() {

BufferedReader a = new BufferedReader(new InputStreamReader(System.in));

String kata = null;

try {

kata = a.readLine();

} catch (Exception e) { e.printStackTrace();

}

return kata;

} }

(13)

Hasil Run:

Referensi

Dokumen terkait

Metode Shell Sort pengurutan yang lebih baik dalam menangani banyak data dibandingakan dengan metode Bubble Sort, Insertion Sort, Selection Sort, Hal ini dapat

Sistem informasi apotek yang dibuat dalam penelitian ini menggunakan PHP dan database mySQL serta menerapkan metode selection sort untuk mengurutkan data stok dari jumlah

• Algoritma yang paling cepat adalah quick sort, diikuti dengan merge sort, insertion sort, lalu selection sort. • Kompleksitas waktu algoritma berguna sebagai

Algoritma insertion sort pada dasarnya memilah data yang akan urutkan menjadi 2 bagian, yang belum diurutkan dan yang sudah diurutkan.. Elemen pertama diambil dari bagian array yang