Python數據結構-雙鏈表

數據結構:雙鏈表和循環雙鏈表

(一)理論知識

鏈表:將表元素存放在經過連接構成的存儲塊中,用連接關係表示元素間的順序關聯,存儲塊亦成爲表結點。數據結構

結構類型spa

(1)基本單鏈表:首端插入/刪除效率高,但尾端操做效率低設計

 

 (2)含尾結點引用的單鏈表:首端插入/刪除、尾端插入效率高,但尾端刪除效率低3d

 

 (3)雙鏈表:blog

單鏈表只能作一個方向地掃描和逐步操做,即便加入了尾結點引用域,也只支持O(1)時間複雜度的首端元素加入、刪除和尾端元素加入。若是但願兩端插入和刪除操做都能高效完成,須要修改結點的設計,加入另外一方向的連接,這樣就獲得了雙向鏈表。該結構的優點在於:從表中任意結點出發,可找到其先後結點(複雜度爲O(1)),使得鏈表許多操做很容易進行class

 

(二)Python實現雙鏈表

 

 

 

 

(三)Python實現循環雙鏈表