Perbezaan Antara TreeSet Dan HashSet

Isi kandungan:

Perbezaan Antara TreeSet Dan HashSet
Perbezaan Antara TreeSet Dan HashSet

Video: Perbezaan Antara TreeSet Dan HashSet

Video: Perbezaan Antara TreeSet Dan HashSet
Video: HashSet и TreeSet - Collections #1 - Advanced Java 2024, Mungkin
Anonim

Perbezaan Utama - TreeSet vs HashSet

Sebilangan besar bahasa pengaturcaraan menyokong Array. Ini adalah struktur data yang digunakan untuk menyimpan pelbagai elemen dari jenis data yang sama. Sekiranya terdapat susunan yang dinyatakan untuk enam elemen, maka tidak dapat digunakan untuk menyimpan sepuluh elemen. Oleh itu, tatasusunan tidak dinamik dan tidak dapat mengubah ukuran larik setelah dinyatakan. Bahasa pengaturcaraan seperti Java menyokong Koleksi yang digunakan untuk menyimpan data secara dinamik. Koleksi menyokong operasi seperti menambahkan elemen dan menghapus elemen. Terdapat sebilangan antara muka dan kelas dalam hierarki koleksi. Antara muka asas adalah antara muka Koleksi. Set adalah antara muka yang memperluas antara muka Koleksi. Ia tidak membenarkan pendua. TreeSet dan HashSet adalah dua kelas dalam hierarki Koleksi dan kedua-duanya menerapkan antara muka Set. TreeSet adalah kelas yang menerapkan antara muka Set dan ia digunakan untuk menyimpan elemen unik dalam urutan menaik. HashSet adalah kelas yang mengimplementasikan antara muka Set dan ia digunakan untuk menyimpan elemen unik menggunakan mekanisme Hashing. Perbezaan utama antara TreeSet dan HashSet ialah TreeSet menyimpan unsur-unsur dalam urutan menaik sementara HashSet tidak menyimpan unsur-unsur dalam tertib menaik. TreeSet dan HashSet hanya menyimpan elemen unik.

KANDUNGAN

1. Gambaran Keseluruhan dan Perbezaan Utama

2. Apa itu TreeSet

3. Apa itu HashSet

4. Persamaan Antara TreeSet dan HashSet

5. Perbandingan Berdampingan - TreeSet vs HashSet dalam Borang Jadual

6. Ringkasan

Apa itu TreeSet?

Kelas TreeSet menerapkan antara muka NavigableSet. Antara muka NavigableSet memperluas antara muka SortedSet, Set, Koleksi dan Iterable dalam urutan hierarki. TreeSet sentiasa mengekalkan urutan menaik. Sekiranya elemen dimasukkan dalam urutan B, A, C, elemen tersebut akan disimpan sebagai A, B, C. Kaedah seperti add (), remove () dapat digunakan dengan objek TreeSet. Kaedah tambah boleh digunakan untuk menambahkan elemen. Kaedah hapus digunakan untuk membuang unsur dari koleksi. Itulah beberapa kaedah yang boleh digunakan dengan TreeSet.

Perbezaan Antara TreeSet dan HashSet
Perbezaan Antara TreeSet dan HashSet

Gambar 01: Program dengan TreeSet

Menurut program di atas, objek jenis TreeSet dibuat. Unsur data rentetan ditambahkan ke objek tersebut menggunakan kaedah tambah. Susunan data yang dimasukkan adalah A, D, A, B, C, D. Dengan menggunakan iterator, nilai yang disimpan dicetak ke skrin. Keluarannya adalah A, B, C, D. Walaupun, terdapat dua huruf A dan dua huruf D, output menampilkan satu A dan satu D masing-masing. Oleh itu, TreeSet menyimpan elemen unik. Tidak ada susunan penyisipan tertentu tetapi ketika melihat hasilnya, dapat dilihat bahawa TreeSet mengekalkan susunan menaik elemen.

Apa itu HashSet?

Kelas HashSet meluaskan kelas AbstractSet yang menerapkan Set Interface. Antara muka Set mewarisi antara muka Koleksi dan Iterable dalam urutan hierarki. Di HashSet, tidak ada jaminan bahawa elemen akan mengekalkan susunan menaik dan susunan yang dimasukkan. Sekiranya pesanan yang dimasukkan adalah A, B, C maka nilainya mungkin disimpan sebagai C, A, B. Pesanan penyimpanan juga boleh menjadi A, B, C tetapi tidak ada jaminan bahawa pesanan yang dimasukkan atau pesanan menaik dipertahankan.

Perbezaan Utama Antara TreeSet dan HashSet
Perbezaan Utama Antara TreeSet dan HashSet

Gambar 02: Program dengan HashSet

Menurut program di atas, objek jenis HashSet dibuat. Unsur data rentetan ditambahkan ke objek tersebut menggunakan kaedah tambah. Susunan data yang dimasukkan adalah L, R, M, M, R, L. Dengan menggunakan iterator, nilai yang disimpan dicetak ke skrin. Keluarannya adalah RL M. Walaupun, terdapat dua huruf L, R dan M dari masing-masing, hanya satu huruf dari masing-masing yang dipaparkan. Oleh itu, HashSet menyimpan elemen unik. Ketika memerhatikan output, dapat dilihat bahwa tidak ada urutan menaik atau urutan yang dimasukkan dipertahankan.

Apakah Persamaan Antara TreeSet dan HashSet?

  • TreeSet dan HashSet adalah kelas yang termasuk dalam hierarki koleksi.
  • Kedua-dua TreeSet dan HashSet menyimpan elemen unik sahaja.
  • TreeSet dan HashSet boleh digunakan untuk menyimpan dan memanipulasi banyak elemen.
  • TreeSet dan HashSet tidak mengekalkan susunan yang dimasukkan.

Apakah Perbezaan Antara TreeSet dan HashSet?

Artikel Diff Tengah sebelum Jadual

TreeSet vs HashSet

TreeSet adalah kelas dalam hierarki koleksi yang digunakan untuk menyimpan elemen unik mengikut urutan menaik. HashSet adalah kelas dalam hierarki koleksi yang digunakan untuk menyimpan elemen unik menggunakan mekanisme Hashing.
Penyimpanan Elemen
TreeSet menyimpan elemen dalam urutan menaik. HashSet tidak menyimpan elemen mengikut urutan menaik.

Ringkasan - TreeSet vs HashSet

Dalam pengaturcaraan, diperlukan untuk menyimpan elemen data secara dinamik. Bahasa pengaturcaraan seperti Java menyokong Koleksi untuk mencapai tugas ini. Terdapat sebilangan antara muka dan kelas dalam hierarki koleksi. TreeSet dan HashSet adalah dua kelas dalam hierarki Koleksi. Kedua-duanya menggunakan antara muka Set. TreeSet adalah kelas yang menerapkan antara muka Set dan ia digunakan untuk menyimpan elemen unik dalam urutan menaik. HashSet adalah kelas yang menerapkan antara muka Set dan ia digunakan untuk menyimpan elemen unik menggunakan mekanisme Hashing. Perbezaan antara TreeSet dan HashSet adalah bahawa TreeSet menyimpan unsur-unsur dalam tertib menaik sementara HashSet tidak menyimpan unsur-unsur dalam tertib menaik. Artikel ini membincangkan perbezaan antara TreeSet dan HashSet.

Disyorkan: