这一部分还是集中聊一下数据结构,虽然我们日常工作中都在用,似乎并没有去思考这些内容,但是我们对这些东西也要有所了解。

数组

数组是平常工作中用的比较多的一种数据结构。这里就不做长篇大论了,主要得几个API熟练使用就可以了,push,pop,indexOf以及迭代方法等等,但是我觉得还是需要去多思考一下,某些场景下是否可以换成别的数据结构,效果是否会更好呢?可能我们平时的业务不会涉及到,但是也是需要去思考的一个问题。

栈 是遵循后进先出原则的有序集合。新加入的元素在栈顶,旧的元素在栈低。通常情况下如果一个类class是栈,则它有以下属性及方法。

  • push(element(s)):添加一个(或几个)新元素到栈顶。

  • pop():移除栈顶的元素,同时返回被移除的元素。

  • peek():返回栈顶的元素,不对栈做任何修改(这个方法不会移除栈顶的元素,仅仅返 回它)。

  • isEmpty():如果栈里没有任何元素就返回true,否则返回false。

  • clear():移除栈里的所有元素。

  • size():返回栈里的元素个数。这个方法和数组的length属性很类似。

如何实现一个栈?

代码如下

class Stack {  this.items = [];    // push  private push(element){     this.items.push(element)  }  // pop    private pop(){    return this.items.pop()  }    // peak 栈顶元素    private peak(){    return this.items[this.items.length-1]  }    // size 栈的长度    private length(){    return this.items.length  }    // isEmpty 是否为空    private isEmpty(){    return this.items.length===0  }    // clear 清空栈  private clear(){    this.items = []  }  }

总结

  • 数组和栈相对来说是比较简单的两种数据结构

  • 借助数组的API可以非常容易的实现一个栈结构

  • 但是栈结构在个人的工作中似乎并不经常出现

我是喜妹子,每篇文章尽量不超过1000字----欢迎关注,点赞,转发,评论。。。

api返回的数据结构_JavaScript中的数据结构数组 和 栈相关推荐

  1. python中定义数据结构_Python中的数据结构—简介

    python中定义数据结构 You have multiples algorithms, the steps of which require fetching the smallest value ...

  2. 清华大学出版数据结构第五版的链表的使用方法_JavaScript 中的数据结构:写给前端软件工程师...

    点击上方"前端教程",选择"星标" 每天前端开发干货第一时间送达! 译者:司南free https://juejin.im/post/5de754faf265d ...

  3. python中定义数据结构_Python中的数据结构。

    python中定义数据结构 I remembered the day when I made up my mind to learn python then the very first things ...

  4. python算法和数据结构_Python中的数据结构和算法

    python算法和数据结构 To 至 Leonardo da Vinci 达芬奇(Leonardo da Vinci) 介绍 (Introduction) The purpose of this ar ...

  5. iOS标准库中常用数据结构和算法之内存池

    上一篇:iOS标准库中常用数据结构和算法之位串 ⛲️内存池 内存池提供了内存的复用和持久的存储功能.设想一个场景,当你分配了一块大内存并且填写了内容,但是你又不是经常去访问这块内存.这样的内存利用率将 ...

  6. Linux 内核中的数据结构:双链表,基数树,位图

    Linux 内核中的数据结构 rtoax 2021年3月 1. 双向链表 Linux 内核自己实现了双向链表,可以在 include/linux/list.h 找到定义.我们将会从双向链表数据结构开始 ...

  7. Tensor (张量) - 神经网络中的数据结构

    Tensor (张量) - 神经网络中的数据结构 Tensor - Data Representation in Neural Networks Tensors are the fundamental ...

  8. Python中的数据结构

    点击上方"小白学视觉",选择加"星标"或"置顶" 重磅干货,第一时间送达 本文转自:磐创AI 概述 在深入研究数据科学和模型构建之前,Pyt ...

  9. python数据结构包括什么_Python中的数据结构详解

    概述 在深入研究数据科学和模型构建之前,Python中的数据结构是一个需要学习的关键内容 了解Python提供的不同数据结构,包括列表.元组等 介绍 数据结构听起来是一个非常直截了当的话题,但许多数据 ...

最新文章

  1. 银行的清算、清分、结算、对账
  2. 什么是优秀管理者的第一课?【如何搞垮一个企业】
  3. 经典语录【摘自网路】
  4. 如何为linux 桌面文件内存,linux - 桌面Linux发行版中.desktop文件的功能是什么? - 堆栈内存溢出...
  5. 1008 数组元素循环右移问题 (20分)
  6. 对于一颗完全二叉树,要求给所有节点加上一个pNext指针,指向同一层的相邻节点;如果当前节点已经是该层的最后一个节点,则将pNext指针指向NULL;给出程序实现,并分析时间复杂度和空间复杂度。
  7. 信息学奥赛一本通 1082:求小数的某一位 | OpenJudge NOI 小学奥数 7830
  8. 《从零开始学Swift》学习笔记(Day 16)——字典集合
  9. 51nod 1435 位数阶乘
  10. 【BZOJ4503】两个串(FFT)
  11. 整数转字符串,字符串转整数
  12. 安装PHP ImageMagick笔记
  13. ES6、7学习笔记(尚硅谷)-6-形参默认值的设置
  14. 暴风影音2013校园招聘笔试题目——c语言D卷
  15. Playmaker节点工具使用(二)—Odin绘制支持
  16. 【渝粤教育】电大中专跨境电子商务理论与实务_1作业 题库
  17. Effective C++ item 6
  18. 曾经的移动应用推广八法尚能饭否?再加一法大概就事半功倍!
  19. 平安性格测试题及答案_【中国平安人寿保险平安保险性格测试特别是智商题通过率怎么样】-看准网...
  20. 华为静态路由及默认路由的配置

热门文章

  1. 使用XmlPullParser
  2. 数据中台 画像标签_数据中台实战:如何通过标签平台圈出产品高价值用户?...
  3. 如何精通java_如何精通java技术
  4. 多媒体计算机的关键技术有哪些,多媒体计算机的定义分类和关键技术
  5. php引入odbc模块,php如何用odbc调用存储过程?
  6. java11新特性_Java11 发布前抓紧掌握这些新特性
  7. openwrt patch文件怎么用_openwrt 打补丁方式修改内核源码
  8. std中稳定排序算法_排序算法问题:稳定排序与不稳定排序
  9. python爬火车票是不是违法_python利用selenium+requests+beautifulsoup爬取12306火车票信息...
  10. OpenGL学习笔记:模型变换、视图变换、投影变换 、视口变换、操作矩阵堆栈