mirror of
https://github.com/krahets/hello-algo.git
synced 2026-06-28 16:44:22 +00:00
d7b2277d2b
* Retranslate Japanese docs with GPT-5.4 * Retranslate Japanese code with GPT-5.4
53 lines
1.6 KiB
C++
53 lines
1.6 KiB
C++
/**
|
|
* File: array_hash_map_test.cpp
|
|
* Created Time: 2022-12-14
|
|
* Author: msk397 (machangxinq@gmail.com)
|
|
*/
|
|
|
|
#include "./array_hash_map.cpp"
|
|
|
|
/* Driver Code */
|
|
int main() {
|
|
/* ハッシュテーブルを初期化 */
|
|
ArrayHashMap map = ArrayHashMap();
|
|
|
|
/* 追加操作 */
|
|
// ハッシュテーブルにキーと値のペア (key, value) を追加
|
|
map.put(12836, "シャオハー");
|
|
map.put(15937, "シャオルオ");
|
|
map.put(16750, "シャオスワン");
|
|
map.put(13276, "シャオファー");
|
|
map.put(10583, "シャオヤー");
|
|
cout << "\n追加完了後、ハッシュテーブルは\nKey -> Value" << endl;
|
|
map.print();
|
|
|
|
/* 検索操作 */
|
|
// キー key をハッシュテーブルに渡し、値 value を取得
|
|
string name = map.get(15937);
|
|
cout << "\n学籍番号 15937 を入力すると、氏名 " << name << endl;
|
|
|
|
/* 削除操作 */
|
|
// ハッシュテーブルからキーと値のペア (key, value) を削除
|
|
map.remove(10583);
|
|
cout << "\n10583 を削除した後、ハッシュテーブルは\nKey -> Value" << endl;
|
|
map.print();
|
|
|
|
/* ハッシュテーブルを走査 */
|
|
cout << "\nキーと値のペア Key->Value を走査" << endl;
|
|
for (auto kv : map.pairSet()) {
|
|
cout << kv->key << " -> " << kv->val << endl;
|
|
}
|
|
|
|
cout << "\nキー Key のみを走査" << endl;
|
|
for (auto key : map.keySet()) {
|
|
cout << key << endl;
|
|
}
|
|
|
|
cout << "\n値 Value のみを走査" << endl;
|
|
for (auto val : map.valueSet()) {
|
|
cout << val << endl;
|
|
}
|
|
|
|
return 0;
|
|
}
|