美文网首页数据结构和算法
数据结构和算法-4.1-栈

数据结构和算法-4.1-栈

作者: 今阳说 | 来源:发表于2021-01-27 11:32 被阅读0次

栈&队列 与 数组的区别

用途:数组,链表,树等一般用来作为数据存储的工具,栈和队列更多是用来作为构思程序算法的辅助工具,用来执行某项特殊任务,例如handler中的messageQueue消息队列,Activity栈等;

受限访问:数组可以通过下标随机访问或遍历,而栈和队列访问是受限的,即在特定时刻只有一个数据项可以被读取或删除;

抽象数据类型:栈和队列的关键点在于它的逻辑特性,而非实现细节,它们可以用其他数据结构,如数组,链表等来实现;

栈和队列插入和移除数据项的时间复杂度都是O(1);

只允许访问最后插入的数据项,移除这个数据项后才可以访问倒数第二个插入的数据项,依此类推,例如往一个桶里面放东西,取出的时候要先取出最上面的;

LIFO:last in first out,后进先出

栈的容量通常比较小,一般用来作为算法或应用程序中临时存储数据

通常提供的限定访问方法是push()和pop(),这是比较通用的命名;

栈的实现

1. 先创建一个栈的基类

2. 用数组实现栈,后面讲到链表后,也将介绍用链表实现栈

3. 对栈的使用

我是今阳,如果想要进阶和了解更多的干货,欢迎关注公众号”今阳说“接收我的最新文章

相关文章

  • 数据结构和算法-4.1-栈

    栈&队列 与 数组的区别 用途:数组,链表,树等一般用来作为数据存储的工具,栈和队列更多是用来作为构思程序算法的辅...

  • 数据结构和算法-4.1-栈

    栈&队列 与 数组的区别 用途:数组,链表,树等一般用来作为数据存储的工具,栈和队列更多是用来作为构思程序算法的辅...

  • 2019-07-11—栈

    栈:Java数据结构和算法(四)——栈 string和char一般这么转化: 21、定义栈的数据结构,请在该类型中...

  • 浅谈算法和数据结构

    注:采转归档,自己学习查询使用 浅谈算法和数据结构: 一 栈和队列浅谈算法和数据结构: 二 基本排序算法浅谈算法和...

  • Java数据结构算法(五)排序

    算法这点粗略整理一下,后面完善 Java数据结构算法(一)链表 Java数据结构算法(二)栈和队列 Java数据结...

  • 100天iOS数据结构与算法实战 Day02 - 栈

    100天iOS数据结构与算法实战 Day02 - 栈 100天iOS数据结构与算法实战 Day02 - 栈

  • 数据结构与算法 (栈实现篇)

    数据结构与算法 (栈实现篇) 在数据结构与算法中,栈(stack)又名堆栈,栈是一种受限的线性储存结构,只允许在一...

  • Java数据结构算法(三)树

    本文旨作于收集整理使用!! 导航 Java数据结构算法(一)链表 Java数据结构算法(二)栈和队列 Java数据...

  • Java数据结构算法(四)图

    本文旨作于收集整理使用!! 导航 Java数据结构算法(一)链表 Java数据结构算法(二)栈和队列 Java数据...

  • java高级知识点

    1.数据结构 程序=数据结构+算法 栈:后进先出,线性结构 入栈:push 出栈:pop假如已知入栈顺序是ab...

网友评论

    本文标题:数据结构和算法-4.1-栈

    本文链接:https://www.haomeiwen.com/subject/sraozktx.html