真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

多棧共享技術(shù),雙端棧的初始化、進(jìn)棧、出棧操作

    棧的應(yīng)用非常廣泛,經(jīng)常會(huì)出現(xiàn)一個(gè)程序中需要同時(shí)使用多個(gè)棧的情況。若使用順序棧,會(huì)因?yàn)閷?duì)棧空間大小難以準(zhǔn)確估計(jì),從而產(chǎn)生有的棧溢出、有的??臻g還很空閑的情況。為了解決這個(gè)問(wèn)題,可以讓多個(gè)棧共享一個(gè)足夠大的數(shù)組空間,通過(guò)利用棧的動(dòng)態(tài)特性來(lái)使其存儲(chǔ)空間互相補(bǔ)充,這就是多棧的共享技術(shù)。

成都創(chuàng)新互聯(lián)公司企業(yè)建站,十余年網(wǎng)站建設(shè)經(jīng)驗(yàn),專注于網(wǎng)站建設(shè)技術(shù),精于網(wǎng)頁(yè)設(shè)計(jì),有多年建站和網(wǎng)站代運(yùn)營(yíng)經(jīng)驗(yàn),設(shè)計(jì)師為客戶打造網(wǎng)絡(luò)企業(yè)風(fēng)格,提供周到的建站售前咨詢和貼心的售后服務(wù)。對(duì)于成都網(wǎng)站設(shè)計(jì)、網(wǎng)站建設(shè)中不同領(lǐng)域進(jìn)行深入了解和探索,創(chuàng)新互聯(lián)在網(wǎng)站建設(shè)中充分了解客戶行業(yè)的需求,以靈動(dòng)的思維在網(wǎng)頁(yè)中充分展現(xiàn),通過(guò)對(duì)客戶行業(yè)精準(zhǔn)市場(chǎng)調(diào)研,為客戶提供的解決方案。

    在順序棧的共享技術(shù)中,最常用的是兩個(gè)棧的共享技術(shù),即雙端棧。它主要利用了棧的棧底位置不變,而棧頂位置動(dòng)態(tài)變化的特性。

實(shí)現(xiàn)代碼如下:

#include

using namespace std;

#define  TRUE 1

#define  FALSE 0

#define M 100 

//雙端順序棧的存儲(chǔ)結(jié)構(gòu)

typedef struct

{

int Stack[M];//Stack[M]為棧區(qū)

int top[2];//top[0]和top[1]分別為兩個(gè)棧頂指示器

}DqStack;

//初始化雙端順序棧

void InitStack(DqStack *S)

{

S->top[0] = -1;

S->top[1] = M;

}

//雙端順序棧進(jìn)棧操作

int Push(DqStack *S,int x,int i)//把數(shù)據(jù)元素x壓入i號(hào)堆棧

{

if (S->top[0]+1 == S->top[1])//棧已滿

{

return FALSE;

}

switch (i)

{

case 0:   //0號(hào)棧

S->top[0]++;

S->Stack[S->top[0]] = x;

break;

case 1:   //1號(hào)棧

S->top[1]--;

S->Stack[S->top[1]] = x;

break;

default:    //參數(shù)錯(cuò)誤

return FALSE;

break;

}

return TRUE;

}

//雙端順序棧出棧操作

int Pop(DqStack *S, int *x, int i)//從i號(hào)堆棧中彈出棧頂元素并送到x中

{

switch (i)

{

case 0:   //0號(hào)棧出棧

if (S->top[0] ==-1)

{

return FALSE;

}

*x=S->Stack[S->top[0]] ;

S->top[0]--;

break;

case 1:   //1號(hào)棧出棧

if (S->top[1] == M)

{

return FALSE;

}

*x = S->Stack[S->top[1]];

S->top[1]++;

break;

default:    

return FALSE;

break;

}

return TRUE;

}


網(wǎng)站名稱:多棧共享技術(shù),雙端棧的初始化、進(jìn)棧、出棧操作
文章路徑:http://weahome.cn/article/gjhehj.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部