|
12345678910111213141516171819202122232425262728293031 |
- from SoSe24.algodat.foundation import AlgoDatArray, AlgoDatValue, read_int_sequence, read_int_sequence_limited
- import matplotlib
- import matplotlib.pyplot as plt
- import hash_table as ht
-
- if __name__ == "__main__":
- filename = "../../seq3.txt"
- dummy = read_int_sequence(filename)
- n = len(dummy)
- step = n // 100
-
- memory_values = []
- compare_values = []
- alpha_values = []
-
- for right_end in range(1, n, step):
- AlgoDatValue.reset()
- z = read_int_sequence_limited(filename, right_end)
- hash = ht.HashTable(int(right_end*2), hash_function=ht.h, exploratory_function=ht.f1)
- for i in z:
- hash.insert(i)
- memory_values.append(AlgoDatValue.memory)
- compare_values.append(AlgoDatValue.compare)
- alpha_values.append(hash.alpha())
-
- plt.plot(range(1, n, step), memory_values, 'b', label='Memory')
- plt.plot(range(1, n, step), compare_values, 'r', label='Compare')
- plt.plot(range(1, n, step), alpha_values, 'g', label='Alpha')
-
- plt.legend()
- plt.show()
|