Advertisement
Guest User

Untitled

a guest
Jan 24th, 2020
114
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.06 KB | None | 0 0
  1. N = 10
  2. hash_table = [[] for _ in range(N)]
  3.  
  4.  
  5. def insert(table, key, value):
  6. hash_key = hash(key) % len(table)
  7. key_exists = False
  8. for i, kv in enumerate(table[hash_key]):
  9. k, v = kv
  10. if key == k:
  11. key_exists = True
  12. break
  13. if key_exists:
  14. table[hash_key][i] = ((key, value))
  15. return False
  16. else:
  17. table[hash_key].append((key, value))
  18. return True
  19.  
  20.  
  21. def search(table, key):
  22. hash_key = hash(key) % len(table)
  23. for k, v in table[hash_key]:
  24. if k == key:
  25. return v
  26. return None
  27.  
  28.  
  29. def delete(table, key):
  30. hash_key = hash(key) % len(table)
  31. for i, kv in enumerate(table[hash_key]):
  32. k, v = kv
  33. if key == k:
  34. del table[hash_key][i]
  35. return True
  36. return False
  37.  
  38.  
  39. insert(hash_table, 10, 'Nepal')
  40. insert(hash_table, 25, 'USA')
  41. insert(hash_table, 20, 'India')
  42. insert(hash_table, 20, 'India2')
  43. insert(hash_table, 21, 'India3')
  44. print(search(hash_table, 21))
  45. delete(hash_table, 21)
  46. print(hash_table)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement