python數據類型的性能--算法複雜度

python兩種內置數據類型上各個操作的大O數量級

列表list和字典dict

對比list和dict的操作

 

v2-b65d72b32e49f916053f00a8680933b8_b.jpg

80/20準則:80%的功能其使用率只有20%

所以越常用的功能,優化的越好,性能就越好

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

最常用的是:按索引取值和賦值(v=a[i],a[i]=v)

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

列表增長:可以選擇append()+

        lst.append(v),執行時間是O(1)
lst=lst+[v],執行時間是O(n+k),其中k是被加的列表長度
      

我們來舉個例子如何計算性能

下面是4種生成n個列表的方法

  1. 循環連接列表(+)方式生成
  2. append方法添加元素生成
  3. 列表推導式
  4. range函數調用轉成列表
        
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章