Cara Menggunakan Struktur Data Java TreeMap

Cara Menggunakan Struktur Data Java TreeMap

Kelas Java TreeMap menyimpan data dalam struktur pohon menggunakan antarmuka peta. Kelas ini memperluas kelas AbstractMap dan, seperti kelas induknya, TreeMap memiliki dua parameter tipe. Salah satu parameter tipenya mewakili kunci di TreeMap, sementara yang lain mewakili nilai.





Struktur data TreeMap menyimpan pasangan nilai kunci dan memungkinkan Anda untuk melakukan operasi CRUD pada data ini.





Cara Membuat TreeMap di Java

Kelas TreeMap memiliki empat konstruktor yang dapat Anda gunakan untuk membuat objek TreeMap baru. Konstruktor default adalah yang paling populer dari keempatnya. Konstruktor ini tidak membutuhkan argumen dan menghasilkan peta pohon kosong.





// Create a new tree map 
TreeMap<Integer,String> customers = new TreeMap<Integer,String>();

Kode di atas menghasilkan peta pohon kosong yang disebut pelanggan .

perangkat ini tidak dapat dimulai. (kode 10

Mengisi Struktur Data TreeMap

Itu taruh() metode menambahkan item ke objek TreeMap. Dibutuhkan dua argumen—kunci dan nilainya. Anda dapat menambahkan item ke peta pohon dalam urutan acak apa pun dan struktur data akan menyimpannya dalam urutan menaik, sesuai dengan kuncinya.



// Populate a tree map 
customers.put(105, "Jessica Jones");
customers.put(102, "Mark Williams");
customers.put(104, "Phil Blair");
customers.put(101, "Kim Brown");
customers.put(103, "Jim Riley");

Kode di atas menambahkan lima pelanggan, secara acak, ke peta pohon pelanggan.

Melihat Item di TreeMap

Kelas TreeMap menyimpan datanya dalam sebuah objek. Jadi, untuk melihat semua item di peta pohon, Anda cukup mencetak objek peta pohon ke konsol:





// View all tree map items as an object 
System.out.println(customers);

Kode di atas mencetak output berikut ke konsol:

{101=Kim Brown, 102=Mark Williams, 103=Jim Riley, 104=Phil Blair, 105=Jessica Jones}

Perhatikan bahwa objek di atas menampilkan item dalam urutan menaik. Anda juga dapat melihat setiap item dan kunci yang sesuai menggunakan sebuah Java untuk loop .





// View all items with an iterator 
for (Entry<Integer, String> customer : customers.entrySet()) {
System.out.println("Key: " + customer.getKey() + " Value: " + customer.getValue());
}

Kode di atas mencetak output berikut ke konsol:

Key: 101 Value: Kim Brown 
Key: 102 Value: Mark Williams
Key: 103 Value: Jim Riley
Key: 104 Value: Phil Blair
Key: 105 Value: Jessica Jones

Memperbarui Item di TreeMap

Kelas TreeMap memungkinkan Anda untuk memperbarui item yang ada menggunakan mengganti() metode. Ada dua metode penggantian. Metode pertama mengambil kunci yang ada dan nilai baru yang Anda inginkan untuk memetakan kunci yang ada.

// Replace existing value 
customers.replace(101,"Kim Smith");
System.out.println(customers);

Kode di atas mencetak objek berikut di konsol:

cara screenshot di snapchat tanpa diketahui orang
{101=Kim Smith, 102=Mark Williams, 103=Jim Riley, 104=Phil Blair, 105=Jessica Jones}

Seperti yang dapat Anda lihat Kim Brown sekarang Kim Smith . Metode replace() kedua mengambil kunci yang ada, nilai kunci saat ini, dan nilai baru yang ingin Anda petakan ke kunci.

// Replace existing value 
customers.replace(103,"Jim Riley", "Michelle Noah");
System.out.println(customers);

Kode di atas mencetak objek berikut di konsol:

{101=Kim Brown, 102=Mark Williams, 103=Michelle Noah, 104=Phil Blair, 105=Jessica Jones}

Pada objek di atas Michelle Nuh menggantikan Jim Riley .

Menghapus Item Dari TreeMap

Jika Anda ingin menghapus satu item dari peta pohon, tombol menghapus() metode adalah satu-satunya pilihan Anda. Dibutuhkan kunci yang terkait dengan item yang ingin Anda hapus dan mengembalikan nilai yang dihapus.

// Remove an item 
customers.remove(104);
System.out.println(customers);

Menjalankan kode di atas mencetak objek berikut ke konsol:

{101=Kim Smith, 102=Mark Williams, 103=Michelle Noah, 105=Jessica Jones}

Ini Kelas Jawa juga memiliki jernih() metode yang memungkinkan Anda untuk menghapus semua item di peta pohon.

TreeMap vs. Kelas Java HashMap

TreeMap dan HashMap adalah dua kelas peta Java yang lebih populer. Keduanya memperluas kelas AbstractMap. Hubungan ini memberi kelas TreeMap dan HashMap akses ke banyak fungsi yang sama.

Namun, ada beberapa perbedaan penting antara kedua kelas peta ini. TreeMap menggunakan implementasi pohon Merah-Hitam dari antarmuka Peta, sedangkan HashMap menggunakan tabel hash. HashMap memungkinkan Anda untuk menyimpan satu kunci nol, sedangkan TreeMap tidak. Akhirnya, HashMap lebih cepat daripada TreeMap. Kecepatan algoritmik yang pertama adalah O(1) sedangkan yang terakhir adalah O(log(n)).