棧是一種非常重要的資料結構,本文介紹了一些簡單的棧的操作。
#include typedef struct stack_node stack_t;
/*初始化stack*/
stack_t *init_stack(int index)
stack->pdata = (int *)malloc(sizeof (int) * index);
if (stack->pdata == null)
}stack->length = index;
stack->top = 0;
return stack;
}/*刪除stack*/
void destory_stack(stack_t *stack)
/*判斷stack為空*/
int is_stack_empty(stack_t *stack)
/*判斷stack為滿*/
int is_stack_full(stack_t *stack)
/*入stack*/
int push_data_to_stack(stack_t *stack, int data)
/*出stack*/
int pop_data_from_stack(stack_t *stack, int *data)
void print_stack_data(stack_t *stack)
}/*測試用例*/
int main(int argc, char *argv)
print_stack_data(stack);
for (i=0;i<10;i++)
return 0;
}
線性棧的基礎操作
環境 dev c tdm gcc 4.9.2 64 bit profiling 輸出大小 1.85850429534912 mib 線性棧操作 包括線性棧的類定義 使用模板 棧的構造與析構 棧的壓棧與彈棧 訪問棧頂元素 判斷棧空與棧滿 棧的清空 template class t class asta...
C語言棧的線性儲存結構操作實現
開發環境codeblock xxwu include include include define stack init size 100 define stack increasement 10 typedef int elemtype typedef struct stack sqstack 列...
線性結構 共享棧
如果乙個程式需要使用多個棧,使用順序棧就會造成棧空間大小難以估計,從而造成有的棧溢位有的棧空閒,此時可以建立乙個共享棧,通俗地講就是將兩個棧的棧底設定在同乙個陣列的兩端,棧頂位置用top1 top2表示。如圖 所以共享棧的資料結構型別為 include define max 10 define in...