在线观看www成人影院-在线观看www日本免费网站-在线观看www视频-在线观看操-欧美18在线-欧美1级

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫(xiě)文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

兩個(gè)棧實(shí)現(xiàn)一個(gè)隊(duì)列方法

麥辣雞腿堡 ? 來(lái)源:盼盼編程 ? 作者:晨夢(mèng)思雨 ? 2023-10-08 15:54 ? 次閱讀

棧和隊(duì)列是比較基礎(chǔ)的數(shù)據(jù)結(jié)構(gòu)。無(wú)論在工作中,還是在面試中,棧和隊(duì)列都用的比較多。在計(jì)算機(jī)的世界,你會(huì)看到隊(duì)列和棧,無(wú)處不在。

棧:一個(gè)先進(jìn)后出的數(shù)據(jù)結(jié)構(gòu)

隊(duì)列:一個(gè)先進(jìn)先出的數(shù)據(jù)結(jié)構(gòu)

棧和隊(duì)列這兩種數(shù)據(jù)結(jié)構(gòu),同時(shí)也存在某種聯(lián)系。用棧可以實(shí)現(xiàn)隊(duì)列,用隊(duì)列也可以實(shí)現(xiàn)棧。

兩個(gè)棧實(shí)現(xiàn)一個(gè)隊(duì)列

思路:讓數(shù)據(jù)入stack1,然后棧stack1中的數(shù)據(jù)出棧并入到棧stack2,然后出stack2。

代碼如下:

type CQueue struct {
    stack1, stack2 *list.List
}

//構(gòu)造函數(shù)    
func Constructor() CQueue {
        return CQueue{
        stack1: list.New(),
        stack2: list.New(),
    }
}
    
//尾部插入
func (this *CQueue) AppendTail(value int)  {
    this.stack1.PushBack(value)
}

//頭部刪除,back函數(shù)返回其list最尾部的值
func (this *CQueue) DeleteHead() int {
    //如果第二個(gè)棧為空
    if this.stack2.Len() == 0 {
        for this.stack1.Len() > 0 {
            this.stack2.PushBack(this.stack1.Remove(this.stack1.Back()))
        }
    }
    if this.stack2.Len() != 0 {
        e := this.stack2.Back()
        this.stack2.Remove(e)
        return e.Value.(int)
    }
    return -1
}

先調(diào)用 AppendTail 函數(shù)將所有元素插入 stack1,在調(diào)用 DeleteHead 函數(shù)將 stack1 中的元素轉(zhuǎn)移到 stack2 中,再將元素再出棧。

再調(diào)用 DeleteHead 時(shí),先判斷 statck2 是否為空,為空則將 stack1 元素移動(dòng)到 stack2 中,然后將 stack2 中的棧頂元素保存,并彈棧。

聲明:本文內(nèi)容及配圖由入駐作者撰寫(xiě)或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問(wèn)題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • 數(shù)據(jù)
    +關(guān)注

    關(guān)注

    8

    文章

    7244

    瀏覽量

    91052
  • 函數(shù)
    +關(guān)注

    關(guān)注

    3

    文章

    4371

    瀏覽量

    64240
  • 隊(duì)列
    +關(guān)注

    關(guān)注

    1

    文章

    46

    瀏覽量

    11043
收藏 人收藏

    評(píng)論

    相關(guān)推薦
    熱點(diǎn)推薦

    隊(duì)列與出隊(duì)列分別于兩個(gè)不同的VI如何進(jìn)行數(shù)據(jù)傳輸?

    如題,入隊(duì)列與出隊(duì)列分別于兩個(gè)不同的VI如何進(jìn)行數(shù)據(jù)傳輸?下圖是入隊(duì)列的情況,選擇【生產(chǎn)】,循環(huán)次,入了
    發(fā)表于 02-28 16:40

    隊(duì)列

    隊(duì)列:1、隊(duì)列定義:限定僅只能在表尾端進(jìn)行插入和刪除的線性表。頂:表尾端被稱之為頂。
    發(fā)表于 08-13 13:50 ?0次下載

    你還會(huì)手寫(xiě)隊(duì)列隊(duì)列的基本實(shí)現(xiàn)程序說(shuō)明

    昨天跟個(gè)CSDN上的朋友聊天,他說(shuō)現(xiàn)在如果讓他自己手寫(xiě)個(gè)或者隊(duì)列,估計(jì)都要寫(xiě)蠻久的,平時(shí)雖
    的頭像 發(fā)表于 11-11 11:34 ?2966次閱讀

    兩個(gè)接觸器如何實(shí)現(xiàn)順序啟動(dòng)

    今天小編給大家分享個(gè)電路,兩個(gè)電機(jī)順序啟動(dòng)電路,這張圖是實(shí)物接線,我們可以看到兩個(gè)接觸器,一個(gè)時(shí)間繼電器,
    的頭像 發(fā)表于 05-14 17:10 ?8173次閱讀

    兩個(gè)接觸器如何實(shí)現(xiàn)順序啟動(dòng)

    兩個(gè)接觸器實(shí)現(xiàn)控制電動(dòng)機(jī)或電器有很多種方法;可以用種SA轉(zhuǎn)換開(kāi)關(guān)去分別控制幾個(gè)KA繼電器,再由繼電器與接觸器相互控制來(lái)完成任務(wù)。不過(guò)這種控制方法
    的頭像 發(fā)表于 02-12 02:38 ?8053次閱讀
    <b class='flag-5'>兩個(gè)</b>接觸器如何<b class='flag-5'>實(shí)現(xiàn)</b>順序啟動(dòng)

    深入淺出了解單調(diào)和單調(diào)隊(duì)列

    內(nèi)單調(diào)遞增或單調(diào)遞減的內(nèi)元素是有序的,單調(diào)隊(duì)列同樣也是。 下面我們通過(guò)幾個(gè)題目由淺入深,點(diǎn)
    的頭像 發(fā)表于 02-02 10:18 ?1669次閱讀
    深入淺出了解單調(diào)<b class='flag-5'>棧</b>和單調(diào)<b class='flag-5'>隊(duì)列</b>

    兩個(gè)S7-200-PLC之間Modbus通訊實(shí)現(xiàn)(從站)

    兩個(gè)S7-200-PLC之間Modbus通訊實(shí)現(xiàn)(從站)方法
    發(fā)表于 04-25 11:24 ?28次下載

    隊(duì)列實(shí)現(xiàn)原理是什么?隊(duì)列實(shí)現(xiàn)方案有哪幾種?

    種后進(jìn)先出的數(shù)據(jù)結(jié)構(gòu),而隊(duì)列種先進(jìn)先出的數(shù)據(jù)結(jié)構(gòu),者原理不難理解,使用也簡(jiǎn)單。
    的頭像 發(fā)表于 07-04 13:28 ?2985次閱讀
    <b class='flag-5'>隊(duì)列</b><b class='flag-5'>實(shí)現(xiàn)</b><b class='flag-5'>棧</b>原理是什么?<b class='flag-5'>隊(duì)列</b><b class='flag-5'>實(shí)現(xiàn)</b><b class='flag-5'>棧</b>方案有哪幾種?

    TencentOS-tiny中環(huán)形隊(duì)列實(shí)現(xiàn)

    1. 什么是隊(duì)列隊(duì)列(queue)是種只能在端插入元素、在另端刪除元素的數(shù)據(jù)結(jié)構(gòu),遵循「先入先出」(FIFO)的規(guī)則。 隊(duì)列中有
    的頭像 發(fā)表于 10-08 16:30 ?1569次閱讀

    簡(jiǎn)述Labview使用隊(duì)列的區(qū)別

    簡(jiǎn)述Labview使用隊(duì)列的區(qū)別
    發(fā)表于 01-19 09:50 ?11次下載

    個(gè)寬帶如何裝兩個(gè)路由器

    二級(jí)路由器、路由器改當(dāng)交換機(jī)、無(wú)線橋接這三種,今天我們就來(lái)看下前面實(shí)現(xiàn)個(gè)寬帶裝兩個(gè)路由器的設(shè)置?
    發(fā)表于 07-29 16:59 ?7.2w次閱讀

    兩個(gè)LED和兩個(gè)按鈕的使用

    電子發(fā)燒友網(wǎng)站提供《兩個(gè)LED和兩個(gè)按鈕的使用.zip》資料免費(fèi)下載
    發(fā)表于 01-30 16:04 ?1次下載
    <b class='flag-5'>兩個(gè)</b>LED和<b class='flag-5'>兩個(gè)</b>按鈕的使用

    stm32單片機(jī)如何實(shí)現(xiàn)個(gè)按鍵切換兩個(gè)程序?

    stm32單片機(jī)如何實(shí)現(xiàn)個(gè)按鍵切換兩個(gè)程序? 作為款功能強(qiáng)大的微控制器,STM32單片機(jī)可以支持多種應(yīng)用場(chǎng)景,其中
    的頭像 發(fā)表于 09-14 14:22 ?6893次閱讀

    隊(duì)列實(shí)現(xiàn)兩種方法

    兩個(gè)隊(duì)列實(shí)現(xiàn)個(gè) 思路:兩個(gè)
    的頭像 發(fā)表于 10-08 16:01 ?899次閱讀

    兩個(gè)硬盤(pán)2個(gè)系統(tǒng)開(kāi)機(jī)切換

    準(zhǔn)備、系統(tǒng)安裝、系統(tǒng)切換和注意事項(xiàng)。 、硬件準(zhǔn)備 在開(kāi)始之前,我們首先要確保我們有兩個(gè)可用的硬盤(pán),每個(gè)硬盤(pán)上都可以安裝個(gè)操作系統(tǒng)。我們建議使用
    的頭像 發(fā)表于 11-28 15:08 ?9542次閱讀
    主站蜘蛛池模板: 国产精品激情综合久久 | 国产精品久久久久久久午夜片 | 久久香蕉国产线看观看亚洲片 | 六月婷婷网视频在线观看 | 成人精品视频在线观看播放 | 四虎影院免费观看 | 夜夜操天天爽 | 伊人网网站 | 深爱婷婷网 | 一本到卡二卡三卡视频 | 中文字幕va一区二区三区 | 爱爱免费网站 | 午夜精品久久久久久久四虎 | 天天噜夜夜操 | 天天狠狠弄夜夜狠狠躁·太爽了 | 伊人久久大线蕉香港三级 | 色老头网址 | 亚洲国产香蕉视频欧美 | 91日本在线观看亚洲精品 | 免费在线播放毛片 | 一区二区中文字幕亚洲精品 | 九九九精品午夜在线观看 | 日本一线a视频免费观看 | 毛片网在线 | 国产吧在线视频 | 午夜精品一区二区三区在线观看 | 国产1024一区二区你懂的 | 五月婷婷丁香久久 | 视频网站免费看 | www.av网站| 手机看片国产免费永久 | 性欧美视频videos6一9 | 亚洲 欧美 综合 | 久久三级网站 | 熊出没之环球大冒险旧版免费观看 | 国内a级毛片免费··· | 青草99| 国产美女特级嫩嫩嫩bbb | 天天射夜夜骑 | 天天做天天爱夜夜大爽完整 | 国产又黄又爽又猛的免费视频播放 |