棧分為順序棧和鏈棧,它們的特點分別如下:
順序棧:用一維陣列s[m]來表達,top代表棧頂,當棧是空的,top=-1,當棧是滿的top=m-1。
順序棧的定義:
typedef int elemtype;
typedef struct sqstack
sqstack;
進棧:
elemtype push(elemtype x,sqstack *ss)
else
}
出棧:
elemtype pop(sqstack *ss)
else
return ss->data[ss->top--];
}
鏈棧:
當棧是空的top=null,棧是滿的top-base=maxsize;
定義:
typedef int datatype;
typedef struct linkstack
linkstack;
入棧:
void lspush(linkstack *ls,int x)
出棧:
void lspop()
else
}
鏈棧的乙個整體**:
#include#include# include # include typedef int datatype;
typedef struct linkstack
linkstack;
linkstack *top;
void lspush(linkstack *ls,int x)
void lspop()
else }
void initls(linkstack *ls,int n)
}int main()
順序棧的初始化,建立,插入,查詢,刪除
順序棧的初始化,建立,插入,查詢,刪除。author wang yong date 2010.8.19 include include define max 100 定義最大棧容量 typedef int elemtype 定義棧型別 typedef struct seqstack 棧的初始化 se...
順序棧的初始化,建立,插入,查詢,刪除。
順序棧 普通陣列儲存方式,棧頂 max 1 為滿,棧底 1 為空 順序棧的初始化,建立,插入,查詢,刪除。author wang yong date 2010.8.19 include include define max 100 定義最大棧容量 typedef intelemtype 定義棧型別 ...
鏈棧的初始化,建立,插入,查詢,刪除。
鏈棧的初始化,建立,插入,查詢,刪除。author wang yong date 2010.8.19 include include typedef intelemtype 定義鏈棧的結構型別 typedef struct stacknode stacknode,linkstack 鏈棧的初始化 l...