日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区

您的位置:首頁技術文章
文章詳情頁

基于python實現模擬數據結構模型

瀏覽:167日期:2022-07-21 14:37:20

模擬棧

Stack() 創建一個空的新棧。 它不需要參數,并返回一個空棧。 push(item)將一個新項添加到棧的頂部。它需要 item 做參數并不返回任何內容。 pop() 從棧中刪除頂部項。它不需要參數并返回 item 。棧被修改。 peek() 從棧返回頂部項,但不會刪除它。不需要參數。 不修改棧。 isEmpty() 測試棧是否為空。不需要參數,并返回布爾值。 size() 返回棧中的 item 數量。不需要參數,并返回一個整數。

class Stack(): def __init__(self): self.items = [] def push(self,item): self.items.append(item) def pop(self): return self.items.pop() def peek(self): return len(self.items) - 1 def isEmpty(self): return self.items == [] def size(self): return len(self.items)s = Stack()s.push(1)s.push(2)s.push(3)print(s.pop())print(s.pop())print(s.pop())print(s.isEmpty())

模擬隊列

Queue() 創建一個空的新隊列。 它不需要參數,并返回一個空隊列。 enqueue(item) 將新項添加到隊尾。 它需要 item 作為參數,并不返回任何內容。 dequeue() 從隊首移除項。它不需要參數并返回 item。 隊列被修改。 isEmpty() 查看隊列是否為空。它不需要參數,并返回布爾值。 size() 返回隊列中的項數。它不需要參數,并返回一個整數。

class Queue(): def __init__(self): self.items = [] def enqueue(self,item): self.items.insert(0,item) def dequeue(self): return self.items.pop() def isEmpty(self): return self.items == [] def size(self): return len(self.items)q = Queue()q.enqueue(1)q.enqueue(2)q.enqueue(3)print(q.dequeue())print(q.dequeue())print(q.dequeue())

案例:燙手山芋

燙手山芋游戲介紹:6個孩子圍城一個圈,排列順序孩子們自己指定。第一個孩子手里有一個燙手的山芋,需要在計時器計時1秒后將山芋傳遞給下一個孩子,依次類推。規則是,在計時器每計時7秒時,手里有山芋的孩子退出游戲。該游戲直到剩下一個孩子時結束,最后剩下的孩子獲勝。請使用隊列實現該游戲策略,排在第幾個位置最終會獲勝。

準則:隊頭孩子的手里永遠要有山芋。

queue = Queue()kids = [’A’,’B’,’C’,’D’,’E’,’F’]#將六個孩子添加到隊列中,A是隊頭位置的孩子for kid in kids: queue.enqueue(kid)while queue.size() > 1: #在7秒之內山芋會被傳遞6次 for i in range(6): kid = queue.dequeue() queue.enqueue(kid) queue.dequeue()print(’獲勝者為:’,queue.dequeue())

模擬雙端隊列

同同列相比,有兩個頭部和尾部。可以在雙端進行數據的插入和刪除,提供了單數據結構中棧和隊列的特性

Deque() 創建一個空的新deque。它不需要參數,并返回空的deque。 addFront(item) 將一個新項添加到deque的首部。它需要item參數并不返回任何內容。 addRear(item) 將一個新項添加到deque的尾部。它需要item參數并不返回任何內容。 removeFront() 從deque中刪除首項。它不需要參數并返回item。deque被修改。 removeRear() 從deque中刪除尾項。它不需要參數并返回item。deque被修改。 isEmpty() 測試deque是否為空。它不需要參數,并返回布爾值。 size() 返回deque中的項數。它不需要參數,并返回一個整數。

案例:回文檢查

回文是一個字符串,讀取首尾相同的字符,例如,radar toot madam。

def isHuiWen(s): ex = True q = Dequeue() # 將字符串的每一個字符添加到雙端隊列中 for ch in s: q.addFront(ch) for i in range(len(s) // 2): font = q.removeFront() rear = q.removeRear() if font != rear: ex = False break return ex

模擬鏈表

. is_empty():鏈表是否為空 . length():鏈表長度 . travel():遍歷整個鏈表 . add(item):鏈表頭部添加元素 . append(item):鏈表尾部添加元素 . insert(pos, item):指定位置添加元素 . remove(item):刪除節點 . search(item):查找節點是否存在

結點對象:

class Node(): def __init__(self,item): self.item = item self.next = None

鏈表對象:

class Link(): #構建出一個空的鏈表 def __init__(self): self._head = None #永遠指向鏈表中的頭節點 #想鏈表的頭部插入節點 def add(self,item): node = Node(item) node.next = self._head self._head = node def travel(self): cur = self._head #鏈表為空則輸出‘鏈表為空’ if self._head == None: print(’鏈表為空!’) while cur: print(cur.item) cur = cur.next def isEmpty(self): return self._head == None def length(self): cur = self._head count = 0 while cur: count += 1 cur = cur.next return count def search(self,item): cur = self._head find = False while cur: if cur.item == item:find = Truebreak cur = cur.next return find def append(self,item): node = Node(item) #鏈表為空的情況 if self._head == None: self._head = node return cur = self._head #頭節點 pre = None #cur的前一個節點 while cur: pre = cur cur = cur.next pre.next = node def insert(self,pos,item): node = Node(item) if pos < 0 or pos > self.length(): print(’重新給pos賦值!!!’) return cur = self._head pre = None for i in range(pos): pre = cur cur = cur.next pre.next = node node.next = cur def remove(self,item): cur = self._head pre = None if self._head == None:#鏈表為空 print(’鏈表為空,沒有可刪除的節點!!1’) return #刪除的是第一個節點的情況 if self._head.item == item: self._head = self._head.next return #刪除的是非第一個節點的情況 while cur: pre = cur cur = cur.next if cur.item == item:pre.next = cur.nextreturn

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持好吧啦網。

標簽: Python 編程
相關文章:
日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区
欧洲av一区二区| 日本不卡一二三区黄网| 日韩精品一区第一页| 午夜久久一区| 蜜臀91精品一区二区三区| 午夜免费一区| 亚洲欧洲日韩| 国产视频一区二区在线播放| 国产精品最新| 国产精品久久久久久久久久10秀| 成人在线超碰| 欧美日韩国产传媒| 免费在线观看一区二区三区| 亚洲区第一页| 久久超级碰碰| 成人羞羞视频播放网站| 999国产精品视频| 国产高清久久| 久久精品 人人爱| 国产盗摄——sm在线视频| 不卡在线一区| 欧美另类中文字幕| 亚洲不卡av不卡一区二区| 亚洲色图综合| www.九色在线| 亚洲人亚洲人色久| 成人片免费看| 国产欧美日韩一区二区三区四区| 激情五月综合网| 国产色综合网| 久久不卡日韩美女| 欧美日韩国产高清| 青青在线精品| 激情久久久久久| 久久不卡国产精品一区二区| 日韩电影免费网站| 久久国产生活片100| 在线日韩av| а√天堂8资源中文在线| 免费在线看一区| 欧美福利在线| 日韩欧美二区| 毛片不卡一区二区| 日韩不卡免费视频| 日韩中文字幕不卡| 亚洲成人三区| 久久要要av| 精品国产精品国产偷麻豆| 亚洲精品伊人| 亚洲精品乱码日韩| 在线亚洲免费| 亚洲激情社区| 亚洲自拍另类| 亚洲欧美日韩国产一区二区| 欧美成人日韩| 五月天久久777| 亚洲韩日在线| 欧美成人精品| 伊人影院久久| 久久高清免费观看| 视频一区免费在线观看| 三级小说欧洲区亚洲区| 国产成人免费av一区二区午夜| 国产精品v一区二区三区| 国产精品片aa在线观看| 国产精品a久久久久| 国产精品一卡| 国产伦精品一区二区三区视频| 日韩黄色在线观看| 国产欧美另类| 国产一区二区三区四区五区| 国产成人精品一区二区三区视频 | 欧美片网站免费| 国产亚洲精品精品国产亚洲综合| 国产日韩欧美在线播放不卡| 久久精品 人人爱| 日本一区二区三区视频在线看| 欧美一区激情| 日韩av字幕| 精品久久99| 伊人影院久久| 国产亚洲精品美女久久久久久久久久| 国产激情综合| 91精品精品| 蜜桃av一区二区三区电影| 欧美日一区二区三区在线观看国产免| 里番精品3d一二三区| 国产自产自拍视频在线观看| 日韩一区二区免费看| 国产亚洲久久| 狠狠色综合网| 精品72久久久久中文字幕| 五月天久久久| 精品国产欧美日韩一区二区三区| 亚洲高清二区| 精品一区二区三区免费看| 亚洲精品一二三区区别| 国产精品nxnn| 亚洲一区欧美| 国产精品久久久久久久免费观看 | 国产婷婷精品| 精品淫伦v久久水蜜桃| 久久成人国产| 欧美sm一区| 国产精品黄色片| 在线精品一区| 欧美午夜精彩| 理论片午夜视频在线观看| 日韩福利视频一区| 丝袜美腿亚洲色图| 欧美 日韩 国产一区二区在线视频| 欧美片第1页综合| 亚洲精品第一| 久久最新视频| 日韩不卡免费高清视频| 美腿丝袜亚洲一区| 欧美日韩黄网站| 日韩国产在线不卡视频| 免费成人性网站| 蜜臀av性久久久久蜜臀aⅴ流畅| 国精品一区二区三区| 九色porny丨国产首页在线| 国产一区二区三区四区五区 | 婷婷亚洲五月色综合| 亚洲天堂久久| 亚洲国产一区二区在线观看 | 激情综合婷婷| 欧美激情久久久久久久久久久| 日韩精品视频在线看| 亚洲欧洲免费| 国产乱人伦精品一区| 美女视频网站久久| 久久久久久网| 婷婷精品视频| 亚洲欧洲免费| 免费精品一区| 欧产日产国产精品视频| 久久网站免费观看| 久久亚洲一区| 国产探花在线精品| 韩日一区二区| 好看的av在线不卡观看| 亚洲综合精品| 日本精品在线播放| 麻豆精品蜜桃视频网站| av资源亚洲| 免费人成黄页网站在线一区二区 | 视频福利一区| 一区二区国产在线| 日韩精品视频中文字幕| 国产精品videossex久久发布| 中文字幕在线看片| 国产模特精品视频久久久久| 日本精品国产| 日韩在线不卡| 亚洲精品一级| 91精品啪在线观看国产18| 亚洲欧洲国产精品一区| 亚洲免费福利| 日本aⅴ亚洲精品中文乱码| 亚洲美女久久精品| 欧美亚洲一区二区三区| 91看片一区| 国产精品入口久久| 亚洲福利专区| 国产精品成久久久久| 中文无码日韩欧| 久久中文字幕av一区二区不卡| 日韩欧美精品一区二区综合视频| 久久精品福利| 91精品视频一区二区| 婷婷亚洲综合| 九九精品调教| 久久伊人国产| 日韩成人午夜精品| 9国产精品视频| 精品捆绑调教一区二区三区| 日韩av网站在线免费观看| 亚洲二区在线| 精品国产成人| 国产精品白丝久久av网站| 日韩在线网址| 中文字幕一区二区av| 亚洲色诱最新| 亚洲午夜精品久久久久久app| 久久一区国产| 国产精品天堂蜜av在线播放| 日本精品久久| 欧美亚洲三区| 国产毛片一区二区三区| 欧美日韩一区二区三区不卡视频| 亚洲美女91| 日本成人中文字幕| 国产欧美日韩一级| 日韩av一区二区三区四区| 国产精品一区二区美女视频免费看 | 久久成人国产| 午夜在线观看免费一区| 夜久久久久久| 蜜桃视频在线观看一区二区|