二叉树的遍历
树的遍历根据访问上级节点的顺序的不同,分为前序、中序和后序。遍历二叉树是指从根节点开始,访间树中所有的节点。它是其它一些算法的基础,例如深度优先搜索。
树的遍历根据访问上级节点的顺序的不同,分为前序、中序和后序。遍历二叉树是指从根节点开始,访间树中所有的节点。它是其它一些算法的基础,例如深度优先搜索。
图是基本数据结构中最复杂,也是用途最广的了,这期视频看一下图是什么样的数据结构,以及如何使用 JavaScript 来实现。
数据结构和算法在规划程序数据存储、读取和计算效率上,有着非常大的重要性。好的数据结构和算法,能让程序的执行效率呈指数级增加,不好的则会让效率指数级下降,所以程序员需要掌握常见的数据结构和算法。另外,它们在面试中也是不可避免的一环。这期视频作为数据结构和算法的第一期,先看一个最简单的数据结构,栈,的定义和实现。因为视频主要是前端相关,所以我们的数据结构和算法会用 JavaScript 语言实现。
树是一种递归的数据结构,与链表类似,一棵树有且只有一个根节点,每个节点有0到多个子节点,每个子节点还有0到多个子节点...
链表和数组类似,是一种线性的数据结构,与数组不同的是,链表中的数据在内存中并不是顺序存储的,而是通过在链表的每个元素中,保存指向下一个元素的引用,来找到下一个元素。
队列是一种先进先出(FIFO)的、线性的数据结构,与栈的结构类似,只是最先入队到队列的数据,会第一个出队,这与栈相反。队列常见的应用场景是基于事件的处理系统,例如 JavaScript 事件循环机制、订单处理系统,邮件处理系统等,它们都是基于消息队列实现的。