随笔分类 - 数据结构-javascript实现
摘要:二叉树中的节点最多只能有两个节点:一个是左侧子节点,另一个是右侧子节点。 二叉搜索树是二叉树的一种,但是它只允许你在左侧节点存储比父节点小的值,在右侧节点存储比父节点大或者等于的值。 1. 二叉搜索树的方法 insert(key): 向树中插入一个新的键 search(key): 在书中查找一个键是
阅读全文
摘要:散列表类似于字典,但其使用散列函数获得地址从而获取数据值。 1. 散列表的方法 put(key, value): 向散列表增加一个新的项 remove(key): 根据键值从散列表中移除值 get(key): 返回根据键值检索到的值 2. 散列表的实现 class HashTable { const
阅读全文
摘要:字典:用【键,值】的形式来存储数据,键名用来查询特定元素。 1.字典所使用的的方法 set(key, value): 向字典中添加元素 remove(key): 移除某个元素 has(key): 检查是否存在某个元素 get(key): 通过键值查询某个元素 clear(): 清除字典中的全部元素
阅读全文
摘要:集合是由一组无序且唯一的项组成的。 1.集合的职责方法 add(value): 向集合中添加新的项 remove(value): 从集合中移除一个值 has(value): 检查集合中是否有该值 clear(): 清空集合 size(): 返回集合中项目的个数 values(): 返回集合中所有项的
阅读全文
摘要:链表存储有序的元素集合,但不同于数组,链表中的元素在内存中并不是连续放置的,每个元素由一个存储元素本身的节点和一个指向下一个元素的引用组成。 1. 链表的职责 append(element): 向链表尾部添加一个新的元素 insert(element): 向链表的特定位置插入一个新的元素 remov
阅读全文
摘要:队列是遵循先进先出(FIFO) 原则的一组有序的项,队列在尾部添加新元素,并从首部移除元素。 1.队列可用的的方法 enqueque(elements) : 向队列尾部添加一个或多个新的元素 dequeque(): 移除队列的第一个元素,并返回被移除的元素 front(): 返回队列中第一个元素,最
阅读全文
摘要:栈是一种遵从后进先出(LIFO) 原则的有序集合。新添加的或待删除的元素都保存在栈的末尾,称作栈顶,另一端叫做栈底。 1. 栈所拥有的职责方法 push(element): 添加一个元素到栈顶 pop(): 移除栈顶的元素 peek(): 返回栈顶的元素 clear(): 清空栈里的元素 isEmp
阅读全文
摘要:数组: 存储一系列同一种数据类型的值,但javascript 的数组类型可以存储任意类型的值。 1. 创建数组 const a = new Array(); const b = []; 2. 数组的长度 const size = [ 1, 2, 3].length; 3.向数组的末尾增加和删除元素
阅读全文