python實現(xiàn)從尾到頭打印單鏈表操作示例
本文實例講述了python實現(xiàn)從尾到頭打印單鏈表操作。分享給大家供大家參考,具體如下:
# coding=utf-8
class SingleNode:
def __init__(self, item):
self.item = item
self.next = None
class SingleLinkedList:
"""
is_empty() 鏈表是否為空
print_end_to_head() 從尾到頭打印單鏈表
append(item) 鏈表尾部添加元素
"""
def __init__(self):
self._head = None
def is_empty(self):
return self._head is None
def append(self, item):
if self.is_empty():
self._head = item
else:
cur = self._head
while cur.next:
cur = cur.next
cur.next = item
def print_end_to_head(self):
"""從尾到頭打印單鏈表"""
if self.is_empty():
print(None)
return
tmp = []
cur = self._head
while cur:
tmp.insert(0, cur)
cur = cur.next
for i in tmp:
print(i.item)
if __name__ == '__main__':
sl = SingleLinkedList()
sl.append(SingleNode(1))
sl.append(SingleNode(2))
sl.append(SingleNode(3))
sl.append(SingleNode(4))
sl.print_end_to_head()
運行結(jié)果:
4
3
2
1
PS:對象obj的打印,可使用如下語句實現(xiàn):
print '\n'.join(['%s:%s' % item for item in obj.__dict__.items()])
更多關(guān)于Python相關(guān)內(nèi)容感興趣的讀者可查看本站專題:《Python數(shù)據(jù)結(jié)構(gòu)與算法教程》、《Python加密解密算法與技巧總結(jié)》、《Python編碼操作技巧總結(jié)》、《Python函數(shù)使用技巧總結(jié)》、《Python字符串操作技巧匯總》及《Python入門與進(jìn)階經(jīng)典教程》
希望本文所述對大家Python程序設(shè)計有所幫助。
- python數(shù)據(jù)結(jié)構(gòu)學(xué)習(xí)之實現(xiàn)線性表的順序
- python數(shù)據(jù)結(jié)構(gòu)之線性表的順序存儲結(jié)構(gòu)
- python實現(xiàn)單鏈表的方法示例
- python如何實現(xiàn)單鏈表的反轉(zhuǎn)
- Python單鏈表原理與實現(xiàn)方法詳解
- Python棧的實現(xiàn)方法示例【列表、單鏈表】
- Python實現(xiàn)棧的方法詳解【基于數(shù)組和單鏈表兩種方法】
- 用python介紹4種常用的單鏈表翻轉(zhuǎn)的方法小結(jié)
- python版單鏈表反轉(zhuǎn)
- Python線性表種的單鏈表詳解
相關(guān)文章
如何解決MNIST數(shù)據(jù)集下載速度較慢并失敗的問題
這篇文章主要介紹了如何解決MNIST數(shù)據(jù)集下載速度較慢并失敗的問題,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教2024-06-06

