利用数组实现入栈出栈
发布日期:2021-06-21 02:53:47 浏览次数:15 分类:技术文章

本文共 545 字,大约阅读时间需要 1 分钟。

#define MAXSTACK 100int stack[MAXSTACK];int top = -1;//判断是否维空栈的函数,stack[-1]返回值无数,指向数组头指针前一个地址,说明为空栈int isEmpty(){	if (top == -1) return 1;	else return 0;}//定义入栈操作,只有栈还有位置才能入栈,定义栈的大小为stack[0]-stack[MAXSTACK],int push(int data){	if (top >= MAXSTACK)	{		cout << "堆栈已满,无法再压入" << endl;		return 0;	}	else {		//数组指针先向前移动一位,然后再将数据放进去		stack[++top] = data;		return 1;	}}//定义出栈操作,只有没有到达栈底才能出栈,故判断一下是否到达栈底	int pop()	{   		if (isEmpty())		{			return -1;		}		else		{//出栈操作先把数据取出来,然后再将地址移动一位//top++是后递增其意思就是在一条指令执行完成之后才会去对i这个变量进行递增			return stack[top--];		}	}

 

转载地址:https://blog.csdn.net/konglingshneg/article/details/85160893 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!

上一篇:数组实现堆栈完成扑克洗牌发牌过程
下一篇:发现傅里叶变换,PCA,SVD都是一种东西,记录一下

发表评论

最新留言

感谢大佬
[***.8.128.20]2025年01月24日 13时06分30秒