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

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

順序棧的基本操作:初始化、進(jìn)棧、出棧、讀棧頂元素

順序棧:利用一組地址連續(xù)的存儲(chǔ)單元依次存放自棧底到棧頂?shù)臄?shù)據(jù)元素,同時(shí)由于棧操作的特殊性,還必須附設(shè)一個(gè)位置指針top(棧頂指針)來(lái)動(dòng)態(tài)地指示棧頂元素在順序棧中的位置。通常以top=-1表示空棧。

我們提供的服務(wù)有:網(wǎng)站設(shè)計(jì)制作、成都網(wǎng)站設(shè)計(jì)、微信公眾號(hào)開發(fā)、網(wǎng)站優(yōu)化、網(wǎng)站認(rèn)證、鳳凰ssl等。為上1000+企事業(yè)單位解決了網(wǎng)站和推廣的問(wèn)題。提供周到的售前咨詢和貼心的售后服務(wù),是有科學(xué)管理、有技術(shù)的鳳凰網(wǎng)站制作公司

代碼如下:

#include

using namespace std;

#define  TRUE 1

#define  FALSE 0

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

#define Stack_Size 50 //設(shè)棧中元素個(gè)數(shù)為50

typedef struct

{

int elem[Stack_Size];//用來(lái)存放棧中元素的一維數(shù)組

int top;//用來(lái)存放棧頂元素的下標(biāo),top=-1表示空棧

}SeqStack;

//初始化順序棧

void InitStack(SeqStack *S)

{

S->top = -1;//構(gòu)造一個(gè)空棧

}

//順序棧進(jìn)棧運(yùn)算,首先判斷棧是否已滿,若棧已滿,還要進(jìn)棧就會(huì)發(fā)生上溢

int Push(SeqStack *S,int x)//將x置入S棧新棧頂

{

if (S->top == Stack_Size - 1)//棧已滿

{

return FALSE;

}

S->top++;

S->elem[S->top] = x;//把x入棧

return TRUE;

}

//順序棧出棧運(yùn)算,首先判斷棧是否為空,若???,還要出棧就會(huì)發(fā)生下溢

int Pop(SeqStack *S, int *x)//將S棧頂元素彈出,放到x所指的存儲(chǔ)空間中帶出

{

if (S->top == - 1)//棧為空

{

return FALSE;

}

else

{

*x = S->elem[S->top];

S->top--;//修改棧頂指針

return TRUE;

}

}

//順序棧讀棧頂元素運(yùn)算

int GetPop(SeqStack *S, int *x)//將棧S棧頂元素讀出,放到x所指的存儲(chǔ)空間中,棧頂指針保持不變

{

if (S->top == -1)//棧為空

{

return FALSE;

}

else

{

*x = S->elem[S->top];

return TRUE;

}

}

注意:在實(shí)現(xiàn)GetPop操作時(shí),也可將參數(shù)SeqStack *S改為SeqStack S,將傳地址方式改為傳值方式。傳值比傳地址容易理解,但傳地址比傳值更節(jié)省空間與時(shí)間。


本文標(biāo)題:順序棧的基本操作:初始化、進(jìn)棧、出棧、讀棧頂元素
網(wǎng)站URL:http://weahome.cn/article/iphppo.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部