博客
关于我
数据结构-栈
阅读量:208 次
发布时间:2019-03-01

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

1.栈的定义

    栈只能通过访问它的一端来实现数据存储和检索的一种线性数据结构,栈又称为后进先出的线性表,在栈中进行插入和删除的一端称为栈顶,另一端称为栈底,不含数据元素的栈称为空栈。

链栈图

 

2.栈的基本运算

    栈的链式存储:用链表作为存储结构的栈称为链栈。由于栈中元素的插入和删除仅在栈顶一端进行,因此不必另外设置头指针,链表的头指针就是栈顶指针。

①入栈

typedef struct Node{    Element data;    Node *next;}Node,*Stack;//s栈顶指针//e入栈的元素void Push(Stack s,Element e){    Stack newNode = (Stack)malloc(sizeof(Stack));    newNode->data = e;    newNode->next = s->next;    s->next = newNode;}

②出栈

//s为栈顶指针Stack Pop(Stack s){    if(s->next)    {        Stack p = s->next;        s->next = p->next;        return p;    }}

③判栈空

bool isEmpty(Stack s){    if(s->next)        return false;    else        return true;}

④读栈顶元素

Element Top(Stack s){    if(s->next)        return s->data;    else        return 0;}

 

转载地址:http://lcgv.baihongyu.com/

你可能感兴趣的文章
JS调用新闻
查看>>
取得刚刚添加记录的ID
查看>>
系统打了补丁后,IIS装不了的解决…
查看>>
Dreamweaver自适应客户端分辨率的…
查看>>
没有找到framedyn.dll,因此这个应…
查看>>
无需信息漫游 巧用QQ邮箱存储聊天…
查看>>
XP SP3无法安装IIS的解决办法
查看>>
超链接如何加下划线
查看>>
禁止重复提交(JavaScript控制表单…
查看>>
超实用!帮你从零开始学会运用高格…
查看>>
phpstudy 开机自动启动
查看>>
TP 5 如何打开错误以及提示
查看>>
layui 数据表格 根据值(1=业务,2=机构)显示中文名称
查看>>
php js 通过sotitle(id,arr)函数输入ID取得返回值
查看>>
js 批量赋值
查看>>
jq 在元素后面或者外部增加HTML代码
查看>>
jquery获取select选中的值
查看>>
jq 点击把下拉框的值累加到文本框值中
查看>>
PHP二维数组按键值排序
查看>>
layui 转换静态表格的数据操作(获取选中行数据)
查看>>