sqstack.cpp

来自「这是一个洄溯法的源程序已经经过编译运行了没有错误」· C++ 代码 · 共 36 行

CPP
36
字号
#include "SqStack.h"
#include <stdio.h>
#include <malloc.h>

Status InitStack(SqStack &s)
{
	s.base = ( SElemType * )malloc(STACK_INIT_SIZE*sizeof(SElemType));
	if(!s.base) return OVERFLOW;
	s.top = s.base;
	s.stacksize = STACK_INIT_SIZE;
	return OK;
}

Status Push(SqStack &s,SElemType e)
{
	if (s.top-s.base>=s.stacksize)
	{
		s.base=(SElemType * )realloc(s.base,(STACK_INIT_SIZE+STACKINCREMENT)*sizeof(SElemType));
		if (!s.base)
		{
			return OVERFLOW;
		}
		s.top = s.base + s.stacksize;
		s.stacksize+=STACKINCREMENT;
	}
	*s.top++ = e;
	return OK;
}
Status Pop(SqStack &s,SElemType &e)
{
	if(s.top==s.base)
		return ERROR;
	e = *--s.top;
		return OK;
}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?