当前位置 博文首页 > XXLoveSHT的博客:常用数据结构应用--哈希表、栈、队列、链表(py

    XXLoveSHT的博客:常用数据结构应用--哈希表、栈、队列、链表(py

    作者:[db:作者] 时间:2021-08-14 21:11

    一:时间复杂度

    大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