利用数组实现栈的一些操作
来源:互联网 发布:egd网络黄金交易平台 编辑:程序博客网 时间:2024/05/17 23:52
//Filename:StackArray.cpp//Writed by CaoLichen//本程序利用数组实现栈的各种操作#include<stdio.h>#include<stdlib.h>#define MaxSize 100//数组上限//定义顺序栈类型typedef struct {int data[MaxSize];//int top;//栈顶指针}SArray;//初始化SArray * InitStack(SArray *s){s = (SArray *)malloc(sizeof(SArray));s->top = -1;//栈顶指针初始化为-1return s;//返回栈地址}//进栈void Push(SArray *s, int data){if(s->top == MaxSize-1){printf("栈溢出,进栈失败\n");return;}s->top ++;s->data[s->top] = data;printf("进栈成功!\n");}//出栈void Pop(SArray *s){if(s->top == -1){printf("栈为空,出栈失败");return ;}s->top --;printf("出栈成功\n");}//打印栈void PrintStack(SArray *s){int num = s->top;for(; num > -1; num --){printf("%d ",s->data[num]);}printf("\n打印栈成功!\n");}//销毁栈void ClearStack(SArray *s){free(s);}//求栈的长度int LengthStack(SArray *s){return(s->top + 1);}int main(){SArray *s;s = NULL;s = InitStack(s);//初始化int i;for(i = 0; i < 20; i ++){Push(s,i);PrintStack(s);}for(i = 0; i < 20; i ++){Pop(s);PrintStack(s);}ClearStack(s);return 0;}
0 0
- 利用数组实现栈的一些操作
- 利用C语言实现一些简单的栈操作
- 利用数组实现队列操作
- 数组的一些操作
- 数组的一些操作
- 利用可变数组实现简单通讯录操作
- 数组的一些常用操作
- 关于数组的一些操作
- 对数组的一些操作
- 数组的一些相关操作
- 关于arrylist的一些操作(包含利用params传递数组参数)
- 利用栈实现队列的操作
- C语言数组实现栈的基本操作,并利用O(1)求出栈中最小元素
- 用数组实现栈的基本操作
- 用动态数组实现栈的操作
- Java实现数组栈的操作
- 利用数组操作实现灰度图像的上下左右翻转(C++&opencv)
- 链表的可变数组的实现和一些基本操作
- android调节屏幕亮度(包括只修改应用程序和修改系统)
- 学习笔记6——字符,字符串,malloc()函数,单引号,双引号
- 淘宝首页链接跳转,非taobao.com域名下的链接处理
- R语言http://weibo.com/dmonsns#_rnd1410060357073
- C++ 学习笔记_0005_分支条件(个税计算、月份天数)
- 利用数组实现栈的一些操作
- UVa 129 Krypton Factor
- HDU 3081 Marriage Match II
- 应用题
- 最长公共子串(LCS)与字符串匹配代码实现
- C++中const用法浅析
- LeetCode:Linked List Cycle
- ORM:一对一
- 麦森数