Python作為一門高級程序語言,擁有豐富的庫和多種數據結構,而其中多維哈希便是其中之一。多維哈希是一種基于哈希表的數據結構,能夠快速地查找和操作數據。
# 實現一個二維哈希表 class HashTable: def __init__(self, size=11): self.size = size self.slots = [[] for _ in range(self.size)] def hash_func(self, key): return key % self.size def rehash(self, old_hash, size): return (old_hash + 1) % size def put(self, key, value): hash_value = self.hash_func(key) slot = self.slots[hash_value] is_key_exist = False for i, (k, v) in enumerate(slot): if k == key: is_key_exist = True slot[i] = (key, value) break if not is_key_exist: slot.append((key, value)) def get(self, key): hash_value = self.hash_func(key) slot = self.slots[hash_value] for k, v in slot: if k == key: return v return None hash_table = HashTable() hash_table.put(1, "hello") hash_table.put(2, "world") print(hash_table.get(1)) # hello print(hash_table.get(2)) # world
如上代碼所示,我們實現了一個二維哈希表,基于哈希表的思想,我們可以通過將鍵的哈希值作為數組下標,將值存儲在對應數組中,從而實現了快速的查找與存儲。
多維哈希表的使用不僅局限于二維,我們也可以通過嵌套的方式來實現更高維度的哈希表。在實際開發中,根據具體的業務需求,我們可以靈活地選用適合自己的數據結構。
上一篇python 左移和右移
下一篇gson返回json亂碼