欧美一区二区三区老妇人-欧美做爰猛烈大尺度电-99久久夜色精品国产亚洲a-亚洲福利视频一区二区

萬能的list列表,python中的堆棧、隊(duì)列實(shí)現(xiàn)全靠它!

在python編程中很多的數(shù)據(jù)計(jì)算都需要依靠列表來實(shí)現(xiàn),比如Java編程中的堆棧結(jié)構(gòu)/隊(duì)列結(jié)構(gòu)也可以通過list列表實(shí)現(xiàn)的。

成都地區(qū)優(yōu)秀IDC服務(wù)器托管提供商(成都創(chuàng)新互聯(lián)).為客戶提供專業(yè)的綿陽(yáng)主機(jī)托管,四川各地服務(wù)器托管,綿陽(yáng)主機(jī)托管、多線服務(wù)器托管.托管咨詢專線:13518219792

【閱讀全文】

1、將列表當(dāng)做堆棧來使用

堆棧數(shù)據(jù)結(jié)構(gòu)實(shí)現(xiàn)的思想就是:‘先進(jìn)后出’,所以實(shí)現(xiàn)時(shí)需要保證先進(jìn)來的數(shù)據(jù)最后出去,堆棧數(shù)據(jù)結(jié)構(gòu)的一般在計(jì)算機(jī)的中綴表達(dá)式計(jì)算中應(yīng)用場(chǎng)景比較多,因?yàn)橛?jì)算機(jī)并不是簡(jiǎn)單的根據(jù)我們理解的加減乘除來進(jìn)行數(shù)據(jù)運(yùn)算的。

這里寫了一個(gè)簡(jiǎn)單的實(shí)現(xiàn)過程,其實(shí)list列表中已經(jīng)有自帶的函數(shù)可以實(shí)現(xiàn)。

stack_ = [] # 初始化一個(gè)棧對(duì)象

'''
寫一個(gè)for循環(huán)向棧對(duì)象中添加數(shù)據(jù)元素
'''
for n in range(10):

    stack_.append(n)  # 向棧對(duì)象中添加數(shù)據(jù)元素

print(stack_) # 當(dāng)前棧對(duì)象中的數(shù)據(jù)元素

# [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]

'''
寫一個(gè)for循環(huán)來移除最后兩個(gè)棧頂數(shù)據(jù)元素
'''
for m in range(2):

    stack_.pop()  # 通過pop函數(shù)移除棧頂元素

print(stack_) # 當(dāng)前棧對(duì)象中的數(shù)據(jù)元素

# [0, 1, 2, 3, 4, 5, 6, 7]

# 可以發(fā)現(xiàn)最后進(jìn)來的兩個(gè)棧頂數(shù)據(jù)元素8、9被移除了出來

這樣就簡(jiǎn)單實(shí)現(xiàn)了棧對(duì)象的過程達(dá)到‘先進(jìn)后出’的效果,也就是‘后進(jìn)先出’。

2、將列表當(dāng)做隊(duì)列來使用

隊(duì)列數(shù)據(jù)結(jié)構(gòu)實(shí)現(xiàn)的思想就是:‘先進(jìn)先出’,將隊(duì)列元素按照排隊(duì)的方式依次加入到隊(duì)列數(shù)組中,先加入的數(shù)據(jù)元素最先出來,然后后面的數(shù)據(jù)元素再向前移動(dòng)。

同樣的還是得通過list列表來實(shí)現(xiàn),只是這次隊(duì)列的實(shí)現(xiàn)需要導(dǎo)入一個(gè)python到代碼塊中來輔助實(shí)現(xiàn)。

from collections import deque  # 將隊(duì)列對(duì)象導(dǎo)入到代碼塊中

# 采用while循環(huán)的方式來進(jìn)行數(shù)據(jù)的初始化

list_ = []  # 初始化一個(gè)list列表用于存放數(shù)據(jù)元素

k = 1  # 初始化k = 1,用于完成while循環(huán)

while k < 20:  # 加入判斷條件,這里取19個(gè)元素

    list_.append(k)  # 向列表中添加數(shù)據(jù)元素

    k = k + 1  # 循環(huán)元素遞增

print(list_)  # 打印查看當(dāng)前的lsit數(shù)據(jù)列表

# [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19]

# 生成了數(shù)據(jù)以后,然后將列表數(shù)據(jù)元素放到隊(duì)列對(duì)象中。

queue_ = deque(list_)  # 初始化隊(duì)列對(duì)象

print(queue_)  # 查看當(dāng)前隊(duì)列數(shù)據(jù)元素

# deque([1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19])

# 現(xiàn)在向隊(duì)列中添加數(shù)據(jù)元素

queue_.append(20)  # 向隊(duì)列中添加元素20

queue_.append(21)  # 向隊(duì)列中添加元素21

print(queue_)  # 查看當(dāng)前隊(duì)列數(shù)據(jù)元素

# deque([1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21])

# 現(xiàn)在從隊(duì)列取出一個(gè)數(shù)據(jù)元素

queue_.popleft()  # 從隊(duì)列的頭部取出數(shù)據(jù)元素

print(queue_)  # 查看當(dāng)前隊(duì)列數(shù)據(jù)元素

# deque([2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21])

這時(shí)候,看到隊(duì)列頭部的數(shù)據(jù)元素1已經(jīng)被取出了。

【往期精彩】

該怎么用pyqt5來實(shí)現(xiàn)數(shù)據(jù)的增、刪、改、查功能...

介紹一個(gè)文本語(yǔ)音神器,幾行代碼就能搞定!

python批量自動(dòng)整理文件

初學(xué)者福利:分享五個(gè)免費(fèi)的 Python 學(xué)習(xí)網(wǎng)站,抓緊收藏吧!

有趣的控制臺(tái)玩法:一行代碼繪制控制臺(tái)圖像!

數(shù)據(jù)處理小工具:Excel 批量數(shù)據(jù)文件拆分/整合器...

辦公自動(dòng)化:PDF文件合并器,將多個(gè)PDF文件進(jìn)行合并...

GUI猜數(shù)字游戲,直接開玩...

手把手教你做一個(gè)數(shù)據(jù)圖表生成器(附源碼)...

動(dòng)態(tài)指針時(shí)鐘:利用pyqt5制作指針鐘表顯示實(shí)時(shí)時(shí)間

python 日志中最亮的仔,是喜歡的花里胡哨吖...

哈撒給,英雄聯(lián)盟全皮膚下載器來了...

本文名稱:萬能的list列表,python中的堆棧、隊(duì)列實(shí)現(xiàn)全靠它!
網(wǎng)站網(wǎng)址:http://chinadenli.net/article42/dsoghhc.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供做網(wǎng)站、動(dòng)態(tài)網(wǎng)站ChatGPT、網(wǎng)站改版、云服務(wù)器網(wǎng)站排名

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)

外貿(mào)網(wǎng)站建設(shè)