順序棧與鏈棧

2021-07-10 11:51:23 字數 1379 閱讀 4865

首先是順序棧

#include

#include

#define maxsize 100

typedef

structshunxu;

shunxu *chuangjian()//建立順序表

int empty(shunxu * s)

/*入*/

int ru(shunxu *s,int n)//插入操作,執行成功返回1,不成功返回0

} int chu(shunxu *s,int *n)//出棧 }

int biaoding(shunxu *s)

void show(shunxu *s)

}/*void show2(shunxu *s)

}*/main()

while(1);

show(s);

printf("現在可以出棧了\n");

doelse

break;

}while(1);

printf("您現在的錶頂元素是》%d\n",biaoding(s));

show(s);

//show2(s);

}

然後是鏈棧

#include

#include

typedef

struct node

node,* link;

//建立

link chuangjian()

//判斷空

int empty(link top)

//入棧

link ru(link top,int data)

//出棧

link chu(link top,int *n)

}void show(link top)

} main()

while(1);

show(top);

printf("現在我們來出棧\n");

do else

break;

}while(1);

show(top);

}

下面是乙個進製轉換器

#include

#include

typedef

struct node node,*link;

link chuangjian()

link ru(int shu,link top)

link zhuan(int shu,int zhuan,link top)

while(1);

return top;

}void show(link top)

} main()

順序棧與鏈棧

順序棧是指利用順序儲存結構實現的棧。用乙個陣列來順序儲存棧中元素,乙個整型變數top來記錄當前棧頂元素在陣列中的位置。1.結點型別 define maxlen 100 typedef structseqstack 2.置空棧演算法 seqstack initstack seqstack s seqs...

棧,順序棧,鏈棧

棧作為一種限定性線性表,是將表的插入刪除限制為僅在表的一端進行,通常將表中允許插入刪除的一端叫做棧頂 top 因此棧頂的當前位置是動態變化的。棧的另一端叫做棧底 bottom 當棧中沒有元素時稱為空棧。插入操作稱為進棧或入棧,刪除操作稱為出棧或退棧。棧是先進後出的線性表,簡稱為lifo表。棧主要有兩...

棧 順序棧 鏈棧

棧 順序棧 鏈棧 分別用順序表和煉表實現棧,完成入棧 出棧 窺探棧頂元素等操作 commom.h ifndef common h define commom h include include include include include define elemtype int void swap...