Manufaktur industri
Industri Internet of Things | bahan industri | Pemeliharaan dan Perbaikan Peralatan | Pemrograman industri |
home  MfgRobots >> Manufaktur industri >  >> Industrial programming >> java

Algoritma Java

Algoritma Java

Dalam tutorial ini, kita akan belajar tentang berbagai algoritme yang disediakan oleh kerangka koleksi Java dengan bantuan contoh.

Kerangka koleksi Java menyediakan berbagai algoritme yang dapat digunakan untuk memanipulasi elemen yang disimpan dalam struktur data.

Algoritma di Java adalah metode statis yang dapat digunakan untuk melakukan berbagai operasi pada koleksi.

Karena algoritme dapat digunakan pada berbagai koleksi, algoritme ini juga dikenal sebagai algoritme umum .

Mari kita lihat penerapan berbagai metode yang tersedia dalam kerangka kerja koleksi.


1. Mengurutkan Menggunakan sort()

sort() metode yang disediakan oleh kerangka koleksi digunakan untuk mengurutkan elemen. Misalnya,

import java.util.ArrayList;
import java.util.Collections;

class Main {
    public static void main(String[] args) {

        // Creating an array list
        ArrayList<Integer> numbers = new ArrayList<>();

        // Add elements
        numbers.add(4);
        numbers.add(2);
        numbers.add(3);
        System.out.println("Unsorted ArrayList: " + numbers);

        // Using the sort() method
        Collections.sort(numbers);
        System.out.println("Sorted ArrayList: " + numbers);

    }
}

Keluaran

Unsorted ArrayList: [4, 2, 3]
Sorted ArrayList: [2, 3, 4]

Di sini pengurutan terjadi secara alami (ascending order). Namun, kita dapat menyesuaikan urutan penyortiran sort() metode menggunakan antarmuka Pembanding .

Untuk mempelajari lebih lanjut, kunjungi Java Sorting.


2. Mengacak Menggunakan shuffle()

shuffle() metode kerangka koleksi Java digunakan untuk menghancurkan segala jenis urutan yang ada dalam struktur data. Itu hanya kebalikan dari penyortiran. Misalnya,

import java.util.ArrayList;
import java.util.Collections;

class Main {
    public static void main(String[] args) {

        // Creating an array list
        ArrayList<Integer> numbers = new ArrayList<>();

        // Add elements
        numbers.add(1);
        numbers.add(2);
        numbers.add(3);
        System.out.println("Sorted ArrayList: " + numbers);

        // Using the shuffle() method
        Collections.shuffle(numbers);
        System.out.println("ArrayList using shuffle: " + numbers);

    }
}

Keluaran

Sorted ArrayList: [1, 2, 3]
ArrayList using shuffle: [2, 1, 3]

Saat kita menjalankan program, shuffle() metode akan mengembalikan output acak.

Algoritme pengacakan terutama digunakan dalam game yang menginginkan keluaran acak.


3. Manipulasi Data Rutin

Di Java, kerangka koleksi menyediakan metode berbeda yang dapat digunakan untuk memanipulasi data.

Misalnya,

import java.util.Collections;
import java.util.ArrayList;

class Main {
    public static void main(String[] args) {
        // Creating an ArrayList
        ArrayList<Integer> numbers = new ArrayList<>();
        numbers.add(1);
        numbers.add(2);
        System.out.println("ArrayList1: " + numbers);

        // Using reverse()
        Collections.reverse(numbers);
        System.out.println("Reversed ArrayList1: " + numbers);

        // Using swap()
        Collections.swap(numbers, 0, 1);
        System.out.println("ArrayList1 using swap(): " + numbers);

        ArrayList<Integer> newNumbers = new ArrayList<>();

        // Using addAll
        newNumbers.addAll(numbers);
        System.out.println("ArrayList2 using addAll(): " + newNumbers);

        // Using fill()
        Collections.fill(numbers, 0);
        System.out.println("ArrayList1 using fill(): " + numbers);

        // Using copy()
        Collections.copy(newNumbers, numbers);
        System.out.println("ArrayList2 using copy(): " + newNumbers);
    }
}

Keluaran

ArrayList1: [1, 2]
Reversed ArrayList1: [2, 1]
ArrayList1 Using swap(): [1, 2]
ArrayList2 using addALl(): [1, 2]
ArrayList1 using fill(): [0, 0]
ArrayList2 using copy(): [0, 0]

Catatan :Saat melakukan copy() metode kedua daftar harus berukuran sama.


4. Mencari Menggunakan binarySearch()

binarySearch() metode kerangka koleksi Java mencari elemen yang ditentukan. Ini mengembalikan posisi elemen dalam koleksi yang ditentukan. Misalnya,

import java.util.Collections;
import java.util.ArrayList;

class Main {
    public static void main(String[] args) {
        // Creating an ArrayList
        ArrayList<Integer> numbers = new ArrayList<>();
        numbers.add(1);
        numbers.add(2);
        numbers.add(3);

        // Using binarySearch()
        int pos = Collections.binarySearch(numbers, 3);
        System.out.println("The position of 3 is " + pos);
    }
}

Keluaran

The position of 3 is 2.

Catatan :Koleksi harus disortir sebelum melakukan binarySearch() metode.

Untuk mengetahui lebih lanjut, kunjungi Java Binary Search.


5. Komposisi

Misalnya,

import java.util.Collections;
import java.util.ArrayList;

class Main {
    public static void main(String[] args) {
        // Creating an ArrayList
        ArrayList<Integer> numbers = new ArrayList<>();
        numbers.add(1);
        numbers.add(2);
        numbers.add(3);
        numbers.add(2);
        System.out.println("ArrayList1: " + numbers);

        int count = Collections.frequency(numbers, 2);
        System.out.println("Count of 2: " + count);

        ArrayList<Integer> newNumbers = new ArrayList<>();
        newNumbers.add(5);
        newNumbers.add(6);
        System.out.println("ArrayList2: " + newNumbers);

        boolean value = Collections.disjoint(numbers, newNumbers);
        System.out.println("Two lists are disjoint: " + value);
    }
}

Keluaran

ArrayList1: [1, 2, 3, 2]
Count of 2: 2
ArrayList2: [5, 6]
Two lists are disjoint: true

6. Menemukan Nilai Ekstrim

min() dan max() metode kerangka koleksi Java digunakan untuk menemukan elemen minimum dan maksimum, masing-masing. Misalnya,

import java.util.Collections;
import java.util.ArrayList;

class Main {
    public static void main(String[] args) {
        // Creating an ArrayList
        ArrayList<Integer> numbers = new ArrayList<>();
        numbers.add(1);
        numbers.add(2);
        numbers.add(3);

        // Using min()
        int min = Collections.min(numbers);
        System.out.println("Minimum Element: " + min);

        // Using max()
        int max = Collections.max(numbers);
        System.out.println("Maximum Element: " + max);
    }
}

Keluaran

Minimum Element: 1
Maximum Element: 3

java

  1. Operator Jawa
  2. Komentar Jawa
  3. Java untuk setiap Loop
  4. String Jawa
  5. Antarmuka Jawa
  6. Kelas Anonim Java
  7. Java mencoba-dengan-sumber daya
  8. Anotasi Jawa
  9. Pernyataan Jawa
  10. Cara Menghasilkan Angka Acak di Jawa