1.順序堆疊的定義如下所示,初始化時,堆疊頂指標top=-1.完成元素出堆疊操作。
#define StackSize 10 //堆疊中存放元素個數
typedef char DataType;
typedef struct
{
DataType date[StackSize];
int top; //堆疊頂指標
}
|
//出堆疊,堆疊頂元素值通過形參item回傳
int Pop(Seqstack *S,DataType *item)
這個怎么做?
uj5u.com熱心網友回復:
if(top<0 || top>=StackSize-1)return 0;
else
copy(item,data[top--]);
return 1;
uj5u.com熱心網友回復:
其實出堆疊進堆疊這些用指標是比較好做的typedef struct{
int*base;
int*top;
int stacksize;
}sqstack;
int initstack(sqatack & s){
s.base=(int*)malloc(stackinitsize*size of (int));
if(!s.base)
return 1;
s.top=s.base;
s.stacksize=stackinitsize;
return 0;
}
uj5u.com熱心網友回復:
if(top<0 || top>=StackSize-1)
return -1;
*item = data[top--];
return 0;
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/24044.html
標籤:新手樂園
下一篇:求解關于void和int的問題
