Selasa, Mei 04, 2021

Sorting Java

Ada dua method in-built untuk melakukan sorting pada Java.

satu, Arrays.Sort() berfungsi untuk array dan juga untuk tipe data primitif.

// Sebuah contoh program Java

// untuk mendemonstrasikan

// cara kerja dari

// Arrays.sort() 

 

// Proses ini akan mengurutkan

// data otomatis secara

// ascending 

import java.util.Arrays

 

public class GFG

 

public static void main(String[] args

int[] arr = { 13, 7, 6, 45, 21, 9, 101, 102 }; 

 

Arrays.sort(arr); 

 

System.out.printf("Modifikasi"

+" arr[] : %s",

Arrays.toString(arr)); 

}

 

}

Output:
Modifikasi arr[] : [6, 7, 9, 13, 21, 45, 101, 102]

dua, Collection.sort() berfungsi untuk tipe data objek seperti ArrayList dan LinkedList.

// Program Java

// mendemonstrasikan fungsi

// dari Collections.sort()

import java.util.*

 

public class GFG

 

public static void main(String[] args

// Ciptakan list dari string 

ArrayList<string>  al = new ArrayList<string>(); 

al.add("Bambang"); 

al.add("Teman"); 

al.add("Salam"); 

al.add("adalah"); 

al.add("Makhluk super"); 

 

// method Collections.sort

// melakukan sorting elemen

// dari ArrayList dalam urutan

// ascending

Collections.sort(al); 

 

/* Cetak hasilnya */ 

System.out.println("Daftar"

+" setelah menggunakan " 

+" Collection.sort() :\n

+ al); } 

}

Output
Daftar setelah menggunakan Collection.sort() :
[adalah, Bambang, Makhluk super, Salam, Teman]

contoh 1: Array Sort

// Contoh program Java untuk

// sorting array secara

// descending menggunakan

// Arrays.sort()

import java.util.Arrays

import java.util.Collections

 

public class GFG

 

public static void main(String[] args

// nilai integer yang

// digunakan sebagai pengganti

// dari int[] tidak akan

// berfungsi pada

// Collections.reverseOrder

// untuk tipe data primitif

Integer[] arr = { 13, 7, 6, 45, 21, 9, 2, 100 }; 

 

/* Sorting arr[] dalam urutan descending */ 

Arrays.sort(arr, Collections.reverseOrder()); 

 

System.out.printf("Modifikasi

+" arr[] : %s"

,Arrays.toString(arr)); 

}

 

}

Output:
Modifikasi arr[] : [100, 45, 21, 13, 9, 7, 6, 2]

Contoh 2: Collection Sort

// Program Java

// mendemonstrasikan fungsi

// dari Collections.sort()

// untuk sorting secara

// descending 

import java.util.*

 

public class GFG

 

public static void main(String[] args

/* ciptakan list of string */ 

ArrayList<string>  al = new ArrayList<string>(); 

al.add("Bambang"); 

al.add("Teman"); 

al.add("Salam"); 

al.add("adalah"); 

al.add("Makhluk super"); 

 

// method Collections.sort

// melakukan sorting element

// ArrayList secara descending

Collections.sort(al, Collections.reverseOrder()); 

 

/* cetak hasil output */ 

System.out.println("Daftar"

+" setelah menggunakan" 

+" Collection.sort() :\n

+ al); 

 

}

Output:
List after the use of Collection.sort() :
[Teman, Salam, Makhluk super, Bambang, adalah]

Cara Melakukan Sorting Subarray

// Contoh program Java untuk

// sorting subarray

// menggunakan Arrays.sort() 

import java.util.Arrays

 

public class GFG

 

public static void main(String[] args

// Array mengandung 8 elemen

int[] arr = { 13, 7, 6, 45, 21, 9, 2, 100 }; 

 

// Sorting subarray dari

// indeks 1 ke indeks 4

 

// nilai yang di-sorting hanya

// {7, 6, 45, 21} 

 

// sisa elemen lain yang tidak

// di-sorting akan tetap

// dipertahankan nilainya

Arrays.sort(arr, 1, 4); 

 

System.out.printf("Modifikasi"

+" arr[] : %s"

,Arrays.toString(arr)); 

 

}

Output:
Modifikasi arr[] : [13, 6, 7, 21, 45, 9, 2, 100]

6 komentar:

  1. Algoritma sorting apa yang digunakan untuk pengurutan pada Java?

    BalasHapus
    Balasan
    1. Method Arrays.sort Java digunakan untuk quicksort array dari data primitif dan merge sort untuk array dari data tipe objek.

      Hapus
  2. Urutan sorting mana yang dilakukan secara default?

    BalasHapus
  3. Bagaimana cara array atau list melakukan sorting secara descending?

    BalasHapus
    Balasan
    1. Sorting descending bisa dilakukan dengan Collection.reverseOrder() seperti diperlihatkan contoh berikut.

      Hapus

Respon komentar 7 x 24 jam, so please be patient :D