python兩種內置數據類型(列表list和字典dict)上各個操作的大O數量級

python兩種內置數據類型(列表list和字典dict)上各個操作的大O數量級

1.對比list和dict操作

在這裏插入圖片描述

2.list列表數據類型常用操作性能

(1)按索引取值和賦值(v=a[i],a[i]=v)

由於列表的隨機訪問特性,這兩個操作執行時間與列表大小無關,均爲O(1)

(2)列表增長,可以選擇append()和“+”

list.append(v),執行時間是O(1)
lst=lst+[v],執行時間是O(n+k),其中k是被加的列表長度。
在這裏插入圖片描述

3.dict字典數據類型常用操作性能

字典與列表不同,根據關鍵碼(key)找數據項,而列表是根據位置(index)。
最常用的操作取值get和賦值set,其性能均爲O(1);另一個重要操作contains(in)是判斷字典中是否存在某個關鍵碼(key),這個性能也是O(1)
在這裏插入圖片描述

python官方的算法複雜度網站

https://wiki.python.org/moin/TimeComplexity

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章