摘要: 散列表和散列映射是一样的,我们已经在本章中介绍了这种数据结构。 在一些编程语言中,还有一种叫作散列集合的实现。散列集合由一个集合构成,但是插入、 移除或获取元素时,使用的是散列函数。我们可以重用本章中实现的所有代码来实现散列集合, 不同之处在于,不再添加键值对,而是只插入值而没有键。例如,可以使用散列集合来存储所有 的英语单词(不包括它们的定义) 。和集合相似,散列集合只存储唯一的不重复的值。... 阅读全文
posted @ 2017-06-09 17:56 鱼肥肥与肥肥鱼 阅读(634) 评论(0) 推荐(0) 编辑
摘要: TypeScript方式实现源码 1 /** 2 * 散列表 3 * @desc 与Set类相似,ECMAScript 6同样包含了一个Map类的实现,即我们所说的字典 4 */ 5 class HashTable { 6 private table = []; 7 public put(key, 阅读全文
posted @ 2017-06-09 17:52 鱼肥肥与肥肥鱼 阅读(441) 评论(0) 推荐(0) 编辑
摘要: TypeScript方式实现源码 1 /** 2 * 字典 3 * @desc 与Set类相似,ECMAScript 6同样包含了一个Map类的实现,即我们所说的字典 4 */ 5 class Dictionary { 6 private items = {}; 7 public set(key, 阅读全文
posted @ 2017-06-09 17:40 鱼肥肥与肥肥鱼 阅读(519) 评论(0) 推荐(0) 编辑
摘要: TypeScript方式实现源码 // 特性: // 1. 集合是由一组无序且唯一(即不能重复)的项组成的。这个数据结构使用了与有限集合相同的数学概念,但应用在计算机科学的数据结构中。 // 2. 也可以把集合想象成一个既没有重复元素,也没有顺序概念的数组 // 3. 在数学中,集合也有并集、交集、 阅读全文
posted @ 2017-06-09 16:30 鱼肥肥与肥肥鱼 阅读(199) 评论(0) 推荐(0) 编辑
摘要: TypeScript方式实现源码 1 class Node { 2 element; 3 next; 4 prev; // 新增的 5 constructor(element) { 6 this.element = element; 7 this.next = null; 8 this.prev = 阅读全文
posted @ 2017-06-09 15:05 鱼肥肥与肥肥鱼 阅读(171) 评论(0) 推荐(0) 编辑
摘要: TypeScript方式实现源码 1 class Node { 2 element; 3 next; 4 constructor(element) { 5 this.element = element; 6 this.next = null; 7 } 8 } 9 class LinkedList { 阅读全文
posted @ 2017-06-09 11:20 鱼肥肥与肥肥鱼 阅读(198) 评论(0) 推荐(0) 编辑
摘要: 阅读全文
posted @ 2017-06-08 18:06 鱼肥肥与肥肥鱼 阅读(122) 评论(0) 推荐(0) 编辑
摘要: 实现击鼓传花,需要用到上一章所述队列类Queue TypeScript方式实现源码 JavaScript方式实现源码 阅读全文
posted @ 2017-06-08 17:36 鱼肥肥与肥肥鱼 阅读(394) 评论(2) 推荐(0) 编辑
摘要: TypeScript方式实现源码 JavaScript方式实现源码 阅读全文
posted @ 2017-06-08 16:59 鱼肥肥与肥肥鱼 阅读(675) 评论(1) 推荐(0) 编辑
摘要: TypeScript方式源码 JavaScript方式源码 阅读全文
posted @ 2017-06-08 16:33 鱼肥肥与肥肥鱼 阅读(239) 评论(0) 推荐(0) 编辑