您的位置:首页 > 其它

第五次课程作业

2017-05-23 21:11 183 查看

第五次课程作业

搭建代码主体框架

课上老师讲到我们第四次作业其实还很多是面向过程,上完课我发现我的第四次作业确实是面向过程,所以这次作业重新做了一次更改,也准备进行重构github代码链接。不过由于这段时间忙于部门换届评比,学习状态不太对,只对代码做了一个框架。

对数据结构栈的学习

栈的概念
栈(stack)是限定仅在表尾进行插入和删除操作的线性表。又称为后进先出的线性表,简称为LIFO结构。

栈的顺序存储结构及实现
#define OK 1
#define ERROR 0
typedef int Status;

栈的结构定义

typedef int SElemType//类型根据具体实际情况而定
typedef struct
{
SElemType data[MAXSIZE];
int top;//用于栈顶指针
}Sqstack;

进栈操作

Status Push(SqStack *S,SElemType e)
{
if(S->top == MAXSIZE - 1)//栈满
{
return ERROR;
}
S->top++;//栈顶指针加一
S->data[S->top]=e;//将新插入元素赋值给栈顶空间
return OK;
}

出栈操作

Status Pop(SqStack *S,SElemType e)
{
if(S->top == -1)
return ERROR;
*e=S->data[S->top];
S->top--;
return OK;
}


以上只列出了栈的基础操作的一小部分,如果全写估计就好长好长了。。

目前我已学习到的有栈的链式存储结构及实现、上次作业讲到的后缀表达法、递归。推荐参考书《大话数据结构》,适用于初学者,优点是讲的很生动,简明易懂,缺点就是不太严谨。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: