Update the book based on the revised second edition (#1014)

* Revised the book

* Update the book with the second revised edition

* Revise base on the manuscript of the first edition
This commit is contained in:
Yudong Jin
2023-12-28 18:06:09 +08:00
committed by GitHub
parent 19dde675df
commit f68bbb0d59
261 changed files with 643 additions and 647 deletions

View File

@ -85,7 +85,7 @@ fn main() {
map.print();
/* 查询操作 */
// 向哈希表输入键 key ,得到值 value
// 向哈希表输入键 key ,得到值 value
let name = map.get(15937).unwrap();
println!("\n输入学号 15937 ,查询到姓名 {}", name);

View File

@ -24,7 +24,7 @@ pub fn main() {
print_util::print_hash_map(&map);
// 查询操作
// 向哈希表输入键 key ,得到值 value
// 向哈希表输入键 key ,得到值 value
let name = map.get(&15937).copied().unwrap();
println!("\n输入学号 15937 ,查询到姓名 {name}");

View File

@ -56,7 +56,7 @@ impl HashMapChaining {
}
}
// 若未找到 key 则返回 None
// 若未找到 key 则返回 None
None
}
@ -122,14 +122,14 @@ impl HashMapChaining {
let index = self.hash_func(key);
let bucket = &self.buckets[index];
// 遍历桶,若找到 key 则返回对应 val
// 遍历桶,若找到 key 则返回对应 val
for pair in bucket {
if pair.key == key {
return Some(&pair.val);
}
}
// 若未找到 key 则返回 None
// 若未找到 key 则返回 None
None
}
}
@ -150,7 +150,7 @@ pub fn main() {
map.print();
/* 查询操作 */
// 向哈希表输入键 key ,得到值 value
// 向哈希表输入键 key ,得到值 value
println!("\n输入学号 13276,查询到姓名 {}", match map.get(13276) {
Some(value) => value,
None => "Not a valid Key"

View File

@ -64,7 +64,7 @@ impl HashMapOpenAddressing {
if first_tombstone == -1 && self.buckets[index] == self.TOMBSTONE {
first_tombstone = index as i32;
}
// 计算桶索引,越过尾部返回头部
// 计算桶索引,越过尾部返回头部
index = (index + 1) % self.capacity;
}
// 若 key 不存在,则返回添加点的索引
@ -163,7 +163,7 @@ fn main() {
hashmap.print();
/* 查询操作 */
// 向哈希表输入键 key ,得到值 val
// 向哈希表输入键 key ,得到值 val
let name = hashmap.get(13276).unwrap();
println!("\n输入学号 13276 ,查询到姓名 {}", name);