当前位置 博文首页 > XXLoveSHT的博客:常用数据结构应用--哈希表、栈、队列、链表(py
一:时间复杂度
大o表示法,主要有O(n) O(n的平方)
二:利用数据结构优化算法
1:哈希表的应用(字典)
什么是哈希表?
(哈希表在内存中也是一段连续的空间、哈希表为啥是无序的,是因为哈希表里面的key值通过哈希算法的计算,计算出来是某个值,好处是查找的时候,直接通过key就能找到对应的数据)
python中的set其实底层也是一种哈希,只不过它的value都是None, 所有set里面的值是不能重复的。
两数之和!!!
target = 13
lista = [5, 9, 7, 8, 10]
# 第一种,按位循环,时间复杂度:o(n^2)
for index, value in enumerate(lista):
for i in range(index + 1, len(lista)):
if lista[index] + lista[i] == 13:
print(index, i)
#第二:使用哈希表,时间复杂度:o(n)
dicta = {}
for index,
cs