‫Dan pelajaran ini, kita akan membahas tabel hash dan kita juga akan melihat kamus nanti.
‫Jadi tabel hash dan kamus adalah beberapa koleksi paling berguna di C Sharp.
‫Jadi kita akan melihat bagaimana mendefinisikannya dan bagaimana menggunakannya, dan dalam skenario apa kita harus
‫memanfaatkannya untuk memahami konsep hashing dan tabel.
‫Pertama, pikirkan tentang kamus yang sebenarnya.
‫Jadi asumsikan kita memiliki kamus bahasa Jerman dan Inggris di mana setiap kata dalam bahasa Jerman hanya berhubungan dengan satu kata
‫dalam bahasa Inggris, karena itu akan menjadi batasan di sini.
‫Jadi ketika kami mencoba dan menerjemahkan kata auto, yang dalam bahasa Jerman pada dasarnya diterjemahkan menjadi mobil dalam
‫bahasa Inggris, kami menggunakan satu kata sebagai kata kunci yang dapat kami cari, misalnya, dan kami mendapatkan satu terjemahan sebagai
‫hasilnya.
‫Jadi selalu ada hubungan satu lawan satu ini.
‫Jadi kami memiliki auto dan itu diterjemahkan ke dalam mobil.
‫Dan kita dapat mencapai hal itu, juga menggunakan tabel hash dan kita akan menggunakan ini dalam contoh yang sangat spesifik di
‫sini.
‫Jadi misalkan kita memiliki sistem pendaftaran siswa dimana setiap siswa memiliki ID dan banyak data lainnya, seperti
‫nama, umur, nilai dan gambar dan lain sebagainya.
‫Agar sistem seperti itu berfungsi, kita memerlukan ID khusus untuk setiap siswa.
‫Jadi harus unik.
‫Jika kita menyimpan data ini menggunakan tabel hash atau kamus, ID siswa akan menjadi kunci
‫dan data siswa akan menjadi objek yang berisi semua info siswa lainnya dan itu akan menjadi
‫nilainya.
‫Jadi kami selalu memiliki pasangan nilai kunci ini.
‫Oke, jadi beginilah cara Anda bisa menemukan data sebenarnya, bisa dibilang, dan ini adalah nilai di baliknya.
‫Jadi Anda bisa melihatnya seperti loker.
‫Jadi ini adalah ide dari loker atau lokasi loker.
‫Ini bisa menjadi berbagai jenis data.
‫Itu tidak harus berupa ID dan ini akan menjadi nilainya.
‫Jadi kamus, mereka harus bertipe sama di tabel hash.
‫Mereka bisa dari berbagai jenis.
‫Jadi ini bisa menjadi bilangan bulat dan ini bisa menjadi objek, misalnya.
‫Jadi kita akan melihat tabel hash terlebih dahulu.
‫Oleh karena itu, kita akan membuat kelas baru atau sebenarnya saya telah menyiapkan kelas baru untuk ini.
‫Mari kita letakkan di sini.
‫Dan itu memiliki beberapa properti.
‫Ini memiliki properti ID, properti nama dan IPK.
‫Dan kemudian kami memiliki konstruktor yang sangat sederhana yang hanya menetapkan nilai.
‫Jadi ID apa pun yang kita berikan ke objek siswa saat kita membuatnya akan menjadi ID objek siswa itu dan
‫sebagainya.
‫OK, jadi tidak ada yang terlalu mewah di sini.
‫Kami hanya menggunakan kelas normal seperti yang telah kita bahas di bab kelas.
‫Sekarang, tentu saja, kita dapat melanjutkan dan membuat kelas ini dalam file terpisah sehingga
‫kita dapat melanjutkan dan membuka penjelajah solusi kita.
‫Silakan dan buat file baru di sini.
‫Jadi tambahkan item baru atau kelas baru seperti sekolah dan mahasiswa.
‫Tapi untuk contoh ini, saya akan membuatnya sederhana dan memasukkannya ke dalam satu file.
‫Seperti yang Anda ketahui, praktik terbaik adalah meletakkannya di file terpisah sehingga Anda tidak mencampuradukkan sesuatu dan Anda
‫dapat lebih mudah menemukan file dan kelas dan semua itu.
‫OK, jadi sekarang kita memiliki kelas siswa, kita dapat melanjutkan dan membuat tabel hash.
‫OK, jadi di dalam program kami di sini, dalam metode utama, di situlah saya
‫akan mendefinisikan tabel hash baru dan itu akan menjadi seperti, jadi tabel hash dan saya akan memanggil tabel yang satu ini, yang akan
‫menjadi tabel hash baru.
‫Kelas tabel hash ada di dalam koleksi sistem, jadi kita perlu menambahkan namespace ini di sini menggunakan
‫sistem yang koleksi, jadi tabel hash dan itu berbeda dengan namespace tabel hash karena begitulah saya
‫memanggil saya yang mungkin membingungkan ide kita di sini jika kita mau untuk masuk ke tabel hash tanpa menambahkan
‫namespace ini ke proyek kita.
‫Tapi sekarang kita memilikinya di dalam kelas program kita, kita bisa menggunakannya.
‫Jadi kita punya tabel hash baru ini, yang sekarang akan menjadi tabel data dan kita bisa meletakkan data yang kita inginkan di
‫sana.
‫Jadi ini adalah bagaimana Anda dapat membuat tabel hash seperti itu, bagaimana Anda dapat menginisialisasinya dengan objek tabel hash seperti yang kami
‫lakukan di sini.
‫Jadi sekarang yang bisa kita lakukan adalah kita bisa memberikan nilai ke tabel hash ini dan kita bahkan bisa menyebutnya tabel
‫siswa untuk membuat kode kita sedikit lebih mudah dibaca.
‫Jadi sekarang kita hanya perlu membuat sekumpulan siswa yang ingin kita miliki di meja kita.
‫Jadi izinkan saya menambahkannya di sini juga.
‫Saya akan memanggil mereka Studd satu mulai dua hingga tiga hingga empat, dan mereka semua akan menjadi objek siswa baru.
‫Jadi di sini ini akan menjadi siswa dengan ID.
‫Salah satunya adalah Maria Chiasm IPK 98.
‫Dan kami memiliki Jason, yang akan memiliki ide untuk itu.
‫Ini adalah ide ini, pengidentifikasi unik, sehingga untuk berbicara, dan kemudian IPK yang dimiliki siswa.
‫Oke, jadi sekarang kita memiliki semua siswa tersebut dan kita dapat menempatkan mereka ke tabel siswa menggunakan ID siswa.
‫Dan praktik yang baik akan terus maju dan tetap meja siswa yang menambahkan.
‫Dan di sini kita biasa mencuri satu I. D. Jadi yang ini di sini, properti sebagai kuncinya.
‫Jadi Anda dapat melihat di sini tabel hash memungkinkan kita untuk memiliki objek tipe off key sehingga dapat berupa
‫semua jenis objek sebagai kunci dan dapat berupa objek opsional atau nullable memiliki nilai sehingga kita dapat menetapkan nilai apa yang bisa menjadi
‫null , tapi kita akan menetapkan nilai dan itu akan menjadi nilai siswa itu sendiri seperti itu.
‫OK, jadi sekarang kami menambahkan satu siswa kami ke tabel siswa kami dan kami dapat melakukan hal yang sama dengan siswa
‫lain dan kami akan menggunakan ID mereka untuk masing-masing siswa.
‫Jadi mari kita gunakan tabel siswa di sini untuk semua.
‫OK, jadi itu tabel hash kami sekarang.
‫Tapi bagaimana kita bisa mengambil entri, jadi bagaimana kita bisa mengambil entri dari tabel hash kita?
‫Nah, mari kita lihat berbagai cara untuk itu.
‫Jadi hal pertama yang bisa kita lakukan adalah membuat objek siswa di sini.
‫Jadi siswa dan objek ini akan disebut siswa tersimpan.
‫OK, jadi saya akan mendapatkan nilai siswa dari meja saya.
‫Jadi dalam hal ini, ini adalah tabel siswa.
‫Meja siswa seperti itu.
‫Dan di sini, mirip dengan cara saya berolahraga dalam array, bagaimana X adalah nilai dalam array, saya dapat mengaksesnya dengan
‫ID.
‫Jadi di sini, misalnya, katakanlah saya ingin mendapatkan yang di Idy seperti itu.
‫Jadi di sini masalahnya adalah tabel hash ini dapat memiliki nilai yang bertipe objek.
‫Benar, seperti yang kita lihat sebelumnya.
‫Jadi di sini, jika kita melanjutkan dan memanggil metode ADD, Anda dapat melihat bahwa kita dapat menetapkan kunci, tetapi nilainya
‫akan bertipe objek.
‫Dan itu berarti bahwa ini di sini akan menjadi objek tipe.
‫Tapi kita tidak bisa menetapkan hanya tipe objek untuk siswa.
‫Itu harus tipe siswa karena siswa ini sebenarnya adalah siswa tipe.
‫Oke, jadi kita perlu memastikan bahwa kita memasukkannya ke siswa di sini dan kemudian ini akan berhasil.
‫Oke, jadi kita casting objek ini ke seorang siswa karena kita tahu bahwa di dalam meja siswa di
‫posisi satu.
‫Jadi pada ID satu, nilainya sebenarnya bertipe mahasiswa.
‫Oke, jadi di sini Anda bisa mendapatkan siswa sekaligus, Anda bisa mendapatkan ID siswa juga dan lain sebagainya.
‫Tapi itu hanya berhasil karena kita tahu bahwa kita sebenarnya menggunakan angka-angka ini.
‫Jadi jika Anda ingin mendapatkannya, jika tidak, Anda bisa menggunakan stand one by ID.
‫Jadi ini sekarang akan memberi Anda nilai di balik satu ID siswa.
‫Jadi ini pada dasarnya akan memberi Anda nilai ini.
‫Berikut adalah siswa di sini.
‫Dan yang ini tepatnya, jadi yang ini di sini, karena itulah yang kami simpan di sini.
‫Jadi sekarang kita bisa melanjutkan dan melakukan sesuatu seperti ini di mana kita sekarang alih-alih Friday Hello World, kita akan benar-benar menulis sesuatu yang berguna,
‫di mana kita menulis siswa I. D. , nama mahasiswa, serta
‫IPK-nya.
‫Jadi kita akan menggunakan ID satu pemikiran siswa.
‫Jadi kami mendapatkan ID-nya, kami mendapatkan namanya dan kami mendapatkan IPK-nya dan dalam hal ini IPK-nya dan sebagainya,
‫karena Marea di posisi satu yang saya inginkan.
‫OK, jadi mari kita jalankan ini dan Anda dapat melihat ID siswa.
‫Salah satunya adalah Maria Antipas, 98.
‫Jadi di sini kita melihat bagaimana kita bisa membuat tabel hash.
‫Ini adalah bagaimana kita dapat menyimpan data dan kemudian tabel hash.
‫Sebenarnya, di sinilah kita menyimpan data dan tabel hash.
‫Dan kemudian ini adalah bagaimana kita dapat mengambil data dari tabel hash.
‫Jadi sekarang mari kita asumsikan kita ingin benar-benar mencetak semua data di dalam tabel hash kita dan kita tidak
‫memiliki kunci tertentu yang kita miliki.
‫Kami hanya dapat melakukannya dengan mendapatkan semua kunci dari tabel hash kami untuk menyelesaikan ini.
‫Pertama, kita harus mendiskusikan struct yang disebut entri kamus setiap kali kita menambahkan entri baru ke tabel hash
‫kita.
‫Jadi pasangan nilai kunci kami dan objek entri kamus baru akan dibuat untuk kami dan itu akan dimasukkan
‫ke dalam tabel hash kami, yang berarti bahwa tabel hash pada dasarnya adalah kumpulan entri kamus.
‫Jadi dengan menggunakan objek entri kamus sementara, kita dapat menelusuri tabel hash menggunakan a untuk setiap loop.
‫Jadi mari kita lihat ini dalam contoh khusus di sini di mana saya akan melanjutkan dan menggunakannya untuk setiap loop di
‫sini.
‫Dan ini untuk setiap jenis loop akan menjadi entri kamus.
‫Itu adalah struktur yang saya bicarakan.
‫Anda dapat melihat di sini entri kamus struct.
‫Jadi apa nama item yang akan saya gunakan?
‫Saya akan menggunakan entri.
‫Tentu saja, Anda dapat memanggil siswa atau apa pun, karena Anda tahu bahwa entri akan bertipe
‫siswa.
‫Tapi katakanlah Anda tidak mengetahuinya.
‫Anda juga bisa menyebutnya entri.
‫Lalu koleksi apa yang ingin kita jalankan atau yang ingin kita dapatkan nilainya?
‫Dan itu akan menjadi meja siswa kami.
‫Jadi yang satu ini mengambil.
‫Item individu dengan ID yang diketahui.
‫Dan di sini.
‫Ambil semua nilai dari tabel hash.
‫OK, jadi entri di dalam tabel hash kita adalah tipe entri kamus, seperti yang baru saja saya katakan.
‫Jadi ini memungkinkan kita sekarang untuk melewati ini.
‫Tabel tabel siswa dan pada dasarnya menampilkan nilai jadi di sini, karena masuk, nilai akan mengembalikan objek yang Anda lihat
‫di sini, katanya objek, tetapi yang kita inginkan untuk mendapatkan detail siswa adalah
‫objek siswa.
‫Yang perlu kita lakukan adalah melakukan hal berikut sehingga kita membuat nilai sementara, yang akan menjadi
‫nilai entri kita.
‫Sekarang kita memiliki masalah yang sama dengan yang kita miliki di sini, OK, di mana kita perlu memasukkan ini ke dalam siswa karena itu hanya
‫sebuah objek.
‫Benar.
‫Tapi kami ingin itu menjadi tipe siswa sehingga kami dapat mengakses properti siswa.
‫Jadi karena jika tidak, nilai entri mengira tidak ada di sini.
‫Saya tidak dapat mengakses ID-nya, saya tidak dapat mengakses namanya, semua itu, meskipun ada di sana.
‫Tetapi ID kami tidak mengizinkannya karena pertama-tama kami harus memastikan bahwa kami mengonversi atau memberikan nilai ke tipe yang
‫tepat, yang akan menjadi tipe siswa kami.
‫Jadi sekarang kita casting itu.
‫Kami menyimpannya sementara dan sekarang kami dapat melanjutkan dan menulis nilai individual ke konsol kami, misalnya, atau
‫digunakan dalam program kami sesuka kami.
‫Jadi di sini kita dapat menggunakan ID siswa dengan menggunakan ID sementara karena temp sekarang adalah tipe siswa
‫dan siswa memiliki ID, nama IPK dan kita dapat mengakses semuanya untuk sekarang beralih melalui seluruh daftar semua siswa kami.
‫Jadi mari kita lakukan itu dengan sangat cepat.
‫Mari kita jalankan kode kita dan lihat apa yang dilakukan setiap grup untuk kita.
‫Jadi Anda bisa melihatnya melewatinya.
‫Dikatakan mahasiswa untuk Steve.
‫Siswa tiga Sclera.
‫Siswa dua adalah Jason dan satu adalah Maria.
‫Jadi saat berjalan dari belakang ke sumur, itu dimulai pada entri terakhir dan naik ke entri pertama.
‫Nah, jika pada titik ini kita tidak tahu apakah itu siswa, meskipun kita
‫sudah mengonversinya menjadi siswa, ini benar-benar hanya untuk menunjukkan kepada Anda bahwa tabel hash sebenarnya hanyalah kumpulan
‫entri kamus.
‫Jadi mari kita lihat bagaimana kita dapat menyederhanakan ini untuk setiap grup.
‫Kita dapat menyederhanakan dengan benar-benar mengatakan untuk setiap kata tipe variabel akan menjadi siswa.
‫Nama barang.
‫Yah, bisa dibilang mahasiswa.
‫Aku hanya akan menyebutnya nilai seperti.
‫Jadi tidak apa-apa.
‫Dan koleksi yang ingin saya lalui akan diambil sementara tabel siswa menandai nilai.
‫Jadi ada saya koleksi nilai tabel hash ini, sehingga mendapat koleksi mata yang berisi nilai-nilai dalam
‫tabel hash.
‫Jadi ini memungkinkan kita untuk melewati nilai-nilai secara langsung tanpa harus melakukannya.
‫Pada dasarnya, lakukan apa yang kami lakukan di sini, di mana kami mengubahnya atau di mana kami melemparkannya ke objek siswa.
‫Jadi sekarang kita bisa melanjutkan dan.
‫Lakukan hal yang sama seperti yang kita lakukan di sini, tetapi sekarang, tentu saja, itu akan menjadi nilai yang saya. D. dan seterusnya, karena ini bukan entri
‫dan bukan 10, tetapi sebenarnya, itu akan menjadi, nilai, OK, karena itulah yang ini untuk
‫setiap yang baru.
‫Memberi kami untuk setiap iterasinya, di mana ia melewati semua nilai yang kami miliki dan
‫nilai akan menjadi nilai individual yang saat ini kami cari untuk iterasi tertentu.
‫Jadi pada iterasi pertama, itu akan terjadi.
‫Steve, maka akan menyeluruh kemudian Jason dan Maria.
‫OK, jadi jika kita menghilangkan baris ini di sini atau ini untuk setiap loop dan kita menjalankannya lagi, kita akan melihat bahwa kita
‫mendapatkan hasil yang sama.
‫Jadi, Steve, Chloro Jason dan Maria.
‫Oke, jadi itu adalah pengantar singkat ke tabel hash dan video berikutnya, saya akan memiliki sedikit tantangan
‫untuk Anda di mana pada dasarnya Anda akan memperluas kode Anda sedikit untuk memahami tabel hash sedikit lebih baik.
‫Dan kemudian kita akan melihat kamus.