摘要: 二叉搜索树最麻烦的地方就是删除结点了,具体步骤如图。 function BinarySearchTree() { // 定义BST实例的属性 this.root = null; this.count = 0; // 定义构造结点的函数 function Node(key) { this.key = 阅读全文
posted @ 2020-04-10 18:51 正义de键盘侠 阅读(858) 评论(0) 推荐(0)
摘要: 前言: 数组进行插入的时候,效率比较低数组进行查找的时候 1.如果基于下标 则很快O(1)2.如果基于内容去查找,则很低数组进行删除的时候,效率低数组进行修改的时候, 1.如果基于下标 则很快O(1)2.如果基于内容,则很低哈希表通常是基于数组实现的优势:插入-删除-查找 巨快查找的速度比树还要快编 阅读全文
posted @ 2020-04-09 17:02 正义de键盘侠 阅读(4067) 评论(0) 推荐(0)
摘要: function Copy(obj) { // 判断是数组还是object var newObj = obj instanceof Array ? []:{}; // 如果是null 则返回null if(!obj) return null; for (let key in obj) { if (o 阅读全文
posted @ 2020-04-06 15:11 正义de键盘侠 阅读(98) 评论(0) 推荐(0)
摘要: function MySet() { // 初始化 this.items = {}; // 添加元素 MySet.prototype.add = function(data) { if(this.has(data)) return false; Object.defineProperty(this. 阅读全文
posted @ 2020-04-05 16:11 正义de键盘侠 阅读(141) 评论(0) 推荐(0)
摘要: function DoublyLinkArray() { // 定义实例属性 this.length = 0; // 链表长度 this.head = null; // 头节点 this.tail = null; // 尾结点 // 定义内部函数 function Node(data) { this 阅读全文
posted @ 2020-04-04 14:38 正义de键盘侠 阅读(129) 评论(0) 推荐(0)
摘要: function PriorityQueue() { // 创建内部类 function Node(data,priority) { this.data = data; this.priority = priority; } // 封装属性 this.items = []; // 实现插入方法 Pr 阅读全文
posted @ 2020-04-04 13:21 正义de键盘侠 阅读(304) 评论(0) 推荐(0)
摘要: function LinkArray() { // 实例属性 this.head = null; // 链表的头节点 this.length = 0; // 记录链表的长度 // 内部函数 function Node(data) { this.data = data; this.next = nul 阅读全文
posted @ 2020-04-03 15:19 正义de键盘侠 阅读(172) 评论(0) 推荐(0)
摘要: 前言: 下载完火狐浏览器后,在桌面通过桌面快捷方式打开火狐总是会多弹出360窗口如图所示: 解决方法: 阅读全文
posted @ 2020-04-03 14:27 正义de键盘侠 阅读(6448) 评论(0) 推荐(0)
摘要: 前言: 学习了npm,想要自己动手操作一波,于是想着把常用的js代码功能组装成一个对象发布到npm上,以后有用的时候,通过npm安装下来直接使用,这样子就不用重发造轮子了。于是我想了想,发现自己做网站常用的代码功能有表单验证,所以决定把表单验证的JS代码封装成一个对象,然后发布到npm上。 npm: 阅读全文
posted @ 2020-03-29 15:10 正义de键盘侠 阅读(1229) 评论(0) 推荐(0)
摘要: 问题描述 输入两个整数a和b,输出这两个整数的和。a和b都不超过100位。 算法描述 由于a和b都比较大,所以不能直接使用语言中的标准数据类型来存储。对于这种问题,一般使用数组来处理。 定义一个数组A,A[0]用于存储a的个位,A[1]用于存储a的十位,依此类推。同样可以用一个数组B来存储b。 计算 阅读全文
posted @ 2020-03-13 22:18 正义de键盘侠 阅读(164) 评论(0) 推荐(0)