91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

c語言創建一個棧的方法是什么

小億
113
2023-11-28 17:15:40
欄目: 編程語言

在C語言中,可以通過以下步驟來創建一個棧:

  1. 定義一個結構體來表示棧的元素:
typedef struct {
   int maxSize;     // 棧的最大容量
   int top;         // 當前棧頂元素的索引
   int* stackArray; // 存儲棧元素的數組
} Stack;
  1. 定義棧的相關操作函數,包括初始化棧、入棧、出棧、獲取棧頂元素等:
void initStack(Stack* stack, int maxSize) {
   stack->maxSize = maxSize;
   stack->top = -1;
   stack->stackArray = (int*)malloc(maxSize * sizeof(int));
}

void push(Stack* stack, int element) {
   if (stack->top == stack->maxSize - 1) {
      printf("棧已滿,無法入棧\n");
      return;
   }
   stack->stackArray[++(stack->top)] = element;
}

int pop(Stack* stack) {
   if (stack->top == -1) {
      printf("棧已空,無法出棧\n");
      return -1;
   }
   return stack->stackArray[(stack->top)--];
}

int top(Stack* stack) {
   if (stack->top == -1) {
      printf("棧已空\n");
      return -1;
   }
   return stack->stackArray[stack->top];
}
  1. 使用棧的相關操作函數來創建和操作棧:
int main() {
   Stack stack;
   int maxSize = 10; // 假設棧的最大容量為10
   initStack(&stack, maxSize); // 初始化棧

   // 入棧
   push(&stack, 1);
   push(&stack, 2);
   push(&stack, 3);

   // 出棧
   printf("%d\n", pop(&stack)); // 輸出3
   printf("%d\n", pop(&stack)); // 輸出2

   // 獲取棧頂元素
   printf("%d\n", top(&stack)); // 輸出1

   return 0;
}

以上代碼演示了如何創建一個棧,并進行入棧、出棧、獲取棧頂元素的操作。

0
房产| 高清| 汝城县| 崇州市| 澄江县| 威信县| 荆州市| 苏州市| 栖霞市| 尚志市| 遂昌县| 前郭尔| 通州区| 西华县| 三江| 阜南县| 武威市| 宜阳县| 固阳县| 蒲江县| 灌南县| 四川省| 徐汇区| 元江| 万盛区| 临洮县| 微博| 寻甸| 永康市| 永泰县| 福清市| 九江县| 宁德市| 巴彦淖尔市| 孟州市| 光泽县| 溧阳市| 榆中县| 鄂伦春自治旗| 东至县| 海原县|