Rumah > pembangunan bahagian belakang > Tutorial Python > Bagaimanakah Jadual Hash Dwiarah Meningkatkan Carian dan Pengambilan Nilai Kunci?

Bagaimanakah Jadual Hash Dwiarah Meningkatkan Carian dan Pengambilan Nilai Kunci?

Mary-Kate Olsen
Lepaskan: 2024-10-29 11:22:30
asal
779 orang telah melayarinya

How do Bidirectional Hash Tables Enhance Key-Value Lookup and Retrieval?

Cara Membina Jadual Hash Dwi Arah Yang Berkesan

Begitu juga dengan struktur data dict Python, jadual hash dwiarah (selepas ini dirujuk sebagai bidict) menawarkan mekanisme carian dan perolehan nilai kunci. Walau bagaimanapun, bidik juga membolehkan pertanyaan nilai kepada kunci, memberikan keupayaan carian yang lebih komprehensif.

Pelaksanaan Bidik yang Cekap

Pelaksanaan bidik yang cekap boleh dicapai menggunakan kelas yang memanjangkan jenis data dict standard. Kelas bidict ini secara dinamik mengekalkan direktori songsang yang mengaitkan nilai (daripada dict asal) kepada senarai kunci yang sepadan.

Ciri Utama

  • Auto-kemas kini direktori songsang: Perubahan dalam dict standard secara automatik dicerminkan dalam direktori songsang.
  • Senarai kunci nilai: Direktori songsang memetakan nilai kepada senarai kunci, membenarkan untuk berbilang kunci mempunyai nilai yang sama.
  • Penyetel dan pemadam tersuai: Kaedah setitem dan delitem yang diubah suai memastikan tingkah laku yang betul semasa menetapkan dan memadam item.

Pecahan Kod

Melaksanakan kelas bidict melibatkan:

  • Mengatasi __init__: Mulakan kedua-dua dict standard dan direktori songsang.
  • Mengatasi __setitem__: Tambahkan pasangan nilai kunci baharu pada dict standard dan kemas kini direktori songsang dengan sewajarnya.
  • Mengatasi __delitem__: Alih keluar kekunci daripada dict standard dan kemas kini direktori songsang dengan mengalih keluar kekunci daripada senarai nilai.

Contoh Penggunaan

<code class="python">bd = bidict({'a': 1, 'b': 2}) 
print(bd)                     # {'a': 1, 'b': 2}                 
print(bd.inverse)             # {1: ['a'], 2: ['b']}</code>
Salin selepas log masuk

Dengan menggunakan direktori songsang, anda boleh dengan mudah mendapatkan kunci daripada nilai yang diberikan:

<code class="python">print(bd.inverse[1])             # ['a']</code>
Salin selepas log masuk

Atas ialah kandungan terperinci Bagaimanakah Jadual Hash Dwiarah Meningkatkan Carian dan Pengambilan Nilai Kunci?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan