中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

怎么在python項目中實現一個棧

發布時間:2021-04-06 17:08:09 來源:億速云 閱讀:143 作者:Leah 欄目:開發技術

今天就跟大家聊聊有關怎么在python項目中實現一個棧,可能很多人都不太了解,為了讓大家更加了解,小編給大家總結了以下內容,希望大家根據這篇文章可以有所收獲。

棧(stack),有些地方稱為堆棧,是一種容器,可存入數據元素、訪問元素、刪除元素,它的特點在于只能允許在容器的一端(稱為棧頂端指標,英語:top)進行加入數據(英語:push)和輸出數據(英語:pop)的運算。沒有了位置概念,保證任何時候可以訪問、刪除的元素都是此前最后存入的那個元素,確定了一種默認的訪問順序。

由于棧數據結構只允許在一端進行操作,因而按照后進先出(LIFO, Last In First Out)的原理運作。

棧結構實現

棧可以用順序表實現,也可以用鏈表實現。

棧的操作

  • Stack() 創建一個新的空棧

  • push(item) 添加一個新的元素item到棧頂

  • pop() 彈出棧頂元素

  • peek() 返回棧頂元素

  • is_empty() 判斷棧是否為空

  • size() 返回棧的元素個數

示例:

class Stack(object):
  """棧"""
  def __init__(self):
     self.items = []
  def is_empty(self):
    """判斷是否為空"""
    return self.items == []
  def push(self, item):
    """加入元素"""
    self.items.append(item)
  def pop(self):
    """彈出元素"""
    return self.items.pop()
  def peek(self):
    """返回棧頂元素"""
    return self.items[len(self.items)-1]
  def size(self):
    """返回棧的大小"""
    return len(self.items)
if __name__ == "__main__":
  stack = Stack()
  stack.push("hello")
  stack.push("world")
  stack.push("itcast")
  print stack.size()
  print stack.peek()
  print stack.pop()
  print stack.pop()
  print stack.pop()

看完上述內容,你們對怎么在python項目中實現一個棧有進一步的了解嗎?如果還想了解更多知識或者相關內容,請關注億速云行業資訊頻道,感謝大家的支持。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

宁德市| 调兵山市| 封丘县| 青浦区| 内乡县| 广州市| 平果县| 佛山市| 武夷山市| 大丰市| 安新县| 甘孜| 黔西县| 宝丰县| 涿州市| 儋州市| 高雄县| 大埔县| 西乌| 登封市| 青铜峡市| 陆河县| 中超| 南陵县| 兴宁市| 横山县| 宁安市| 渑池县| 钟祥市| 钟山县| 南华县| 平昌县| 澄江县| 兴业县| 新余市| 安平县| 呼图壁县| 涞源县| 长武县| 濮阳县| 托克托县|