
数据结构
夜已如歌_ok
这个作者很懒,什么都没留下…
展开
-
js 数据结构(四):集合
集合 集合是由一组无序且唯一(即不能重复)的项组成。这个数据结构使用了与有限集合相同的数学概念,但应用在计算机科学的数据结构中。 我们来实现集合, 下面是Set类的骨架: function Set() { var items = {}; this.add = function (value) {}; // 向集合添加一个新项 this.remove= function (value) {}; // 从集合移除一个值 this.has = function原创 2020-08-25 21:39:26 · 433 阅读 · 0 评论 -
js 数据结构(二):队列
队列 队列是遵循FIFO(First In First Out,先进先出)原则的一组有序的项。队列在尾部添加新元素,并从顶部移除元素。最新添加的元素必须排在队列的末尾。 如现实中的排队: 队列的创建: 先进行声明: function Queue(){ //这里是属性和方法 } 然后我们需要一个用于存储队列中元素的数据结构,我们可以使用数组(此时会发现Queue类和Stac...原创 2019-04-26 22:17:56 · 380 阅读 · 0 评论 -
js 数据结构(三):链表
链表 链表存储有序的元素集合, 但不同于数组的是链表中的元素在内存中并不是连续放置的。每个元素由一个存储元素本身的节点和一个指向下一个元素的引用指针或(链接)组成。下图展示了一个链表的结构: 我们来实现链表, 下面是LinkedList类的骨架: function LinkedList() { var Node = function(element) { thi...原创 2019-04-28 22:42:20 · 401 阅读 · 0 评论 -
js 数据结构(一):栈
栈 栈是一种遵从后进先出(LIFO)原则的有序集合。新添加的或待删除的元素都保存在栈的末尾,称作栈顶,另一端就叫栈底。在栈里,新元素都靠近栈顶,旧元素都接近栈顶。 现实生活中就有很多栈的例子。如下图的书本,这一摞书如果要取肯定是先去最上面的那一本,但它是最后一个放上去的,也就是栈顶的元素都是待添加或是待删除的。这就是后进先出的实际例子。 栈的创建: 我们创建一个类来表示栈。先声明...原创 2019-04-24 22:25:24 · 408 阅读 · 0 评论