• Tidak ada hasil yang ditemukan

Laporan Praktikum Sorting (Selection Sort & Insertion Sort Lanjutan)

N/A
N/A
Mitha Zalina Ramadhany

Academic year: 2024

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

Copied!
13
0
0

Teks penuh

(1)

LAPORAN PRAKTIKUM

Sorting (Selection Sort & Insertion Sort Lanjutan)

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. Percobaan 2 : Selection Sort DESCENDING Codingan nya:

//MITHA ZALINA RAMADHANY //6304221424

package Sorting;

import java.io.BufferedReader;

import java.io.InputStreamReader;

public class SelectionSortMitha2 { 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;

(3)

}

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:

(4)

2. Percobaan 3 : Insertion Sort DESCENDING Codingannya:

//MITHA ZALINA RAMADHANY //6304221424

package Sorting;

import java.io.BufferedReader;

import java.io.InputStreamReader;

public class InsertionSortMitha2 { 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--) {

(5)

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:

(6)

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

Codingannya:

//MITHA ZALINA RAMADHANY //6304221424

package Sorting;

import java.util.Scanner;

public class StringSelectionSortMitha2 { 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 maxIndex = i;

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

if (array[j].compareTo(array[maxIndex]) > 0) { maxIndex = j;

} }

String temp = array[maxIndex];

(7)

array[maxIndex] = array[i];

array[i] = temp;

} }

static String inputdata() {

Scanner input = new Scanner(System.in);

return input.nextLine();

} }

Hasil Run:

(8)

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

Codingannya:

//MITHA ZALINA RAMADHANY //6304221424

package Sorting;

import java.io.BufferedReader;

import java.io.InputStreamReader;

public class StringInsertionSortMitha2 { 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--;

(9)

}

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;

} }

Hasil Run:

(10)

5. PERCOBAAN : Selection Sort Secara ASCENDING Codingannya:

//MITHA ZALINA RAMADHANY //6304221424

package Sorting;

public class SelectionSortMithaASC {

public static <T extends Comparable<? super T>> void selectionSort(T[] arr) {

T temp;

for(int i=arr.length-1 ; i>=0 ; i--){

int max = i;

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

if(arr[j].compareTo(arr[max]) > 0) max = j;

}

temp = arr[i];

arr[i] = arr[max];

arr[max] = temp;

} }

public static <T> void tampil(T data[]) { for (T objek : data) {

System.out.print(objek + " ");

}

System.out.println("");

}

public static void main(String[] args) { Integer data[] = new Integer[10];

for(int a=0 ; a>data.length ; a++){

data[a]= (int)(Math.random()*13+1);

}

long awal = System.currentTimeMillis();

selectionSort(data);

long sisaWaktu = System.currentTimeMillis() - awal;

tampil(data);

System.out.println("Waktu " + sisaWaktu);

} }

Hasil Run:

(11)

6. PERCOBAAN : Insertion Sort Secara ASCENDING Codingannya:

//MITHA ZALINA RAMADHANY //6304221424

package Sorting;

public class InsertionSortMithaASC {

public static <T extends Comparable<? super T>> void insertionSort(T[] arr){

for (int i=arr.length-1 ; i>=0 ; i--) {

for (int j = i+1, k = i; j <arr.length ; j++){

if (arr[j].compareTo(arr[k]) > 0) { break;

} else {

T temp = arr[k];

arr[k] = arr[j];

arr[j] = temp;

k = j;

} } }

} public static <T> void tampil(T data[]) { for (T objek : data) {

System.out.print(objek + " ");

}

System.out.println("");

}

public static void main(String[] args) { Integer data[] = new Integer[10];

for(int a=0 ; a<data.length ; a++) {

data[a]= (int)(Math.random()*20+1);

}

long awal = System.currentTimeMillis();

insertionSort(data);

long sisaWaktu = System.currentTimeMillis() - awal;

tampil(data);

System.out.println("Waktu " + sisaWaktu);

} }

Hasil Run:

(12)

7. PERCOBAAN : Selection Sort Secara DESCENDING Codingannya:

//MITHA ZALINA RAMADHANY //6304221424

package Sorting;

public class SelectionSortMithaDESC {

public static <T extends Comparable<? super T>> void selectionSort(T[] arr) {

T temp;

for(int i=arr.length-1 ; i>=0 ; i--){

int max = i;

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

if(arr[j].compareTo(arr[max]) < 0) max = j;

}

temp = arr[i];

arr[i] = arr[max];

arr[max] = temp;

} }

public static <T> void tampil(T data[]) { for (T objek : data) {

System.out.print(objek + " ");

}

System.out.println("");

}

public static void main(String[] args) { Integer data[] = new Integer[10];

for(int a=0 ; a<data.length ; a++){

data[a]= (int)(Math.random()*13+1);

}

long awal = System.currentTimeMillis();

selectionSort(data);

long sisaWaktu = System.currentTimeMillis() - awal;

tampil(data);

System.out.println("Waktu " + sisaWaktu);

} }

Hasil Run:

(13)

8. PERCOBAAN : Insertion Sort Secara DESCENDING Codingannya:

package Sorting;

public class InsertionSortMithaDESC {

public static <T extends Comparable<? super T>> void insertionSort(T[] arr){

for (int i=arr.length-1 ; i>=0 ; i--) {

for (int j = i+1, k = i; j <arr.length ; j++){

if (arr[j].compareTo(arr[k]) < 0) { break;

} else {

T temp = arr[k];

arr[k] = arr[j];

arr[j] = temp;

k = j;

} } } }

public static <T> void tampil(T data[]) { for (T objek : data) {

System.out.print(objek + " ");

}

System.out.println("");

}

public static void main(String[] args) { Integer data[] = new Integer[10];

for(int a=0 ; a<data.length ; a++) {

data[a]= (int)(Math.random()*20+1);

}

long awal = System.currentTimeMillis();

insertionSort(data);

long sisaWaktu = System.currentTimeMillis() - awal;

tampil(data);

System.out.println("Waktu " + sisaWaktu);

} }

Hasil Run:

Referensi

Dokumen terkait

package Big_Cat; class Big_Cat package bigCat; // Kelas abstrak public abstract class Big_Cat { protected static String name; protected abstract void eat; } // Kelas turunan class

3 package A; public class MainA { public static void mainString args[]{ } } package A; public class TestA { private int varPrivateA ; int varDefaultA ; protected int

import java.sql.Connection; import java.sql.DriverManager; import java.sql.ResultSet; import java.sql.SQLException; import java.sql.Statement; public class Sbd2 { static String url