摘要: 快速排序 上述的快速排序实现很好理解,就是每次遍历当前的arr,将比中间值小的放到left,大的放到right。这是前端通常的版本,但是这样的版本是有问题的。正常的我们说快排的时间复杂度平均和最好都是O(nlogn),最坏情况下是O(n^2),空间复杂度为O(nlogn)。这个代码中,空间复杂度为O 阅读全文
posted @ 2018-09-19 12:47 leerle 阅读(151) 评论(0) 推荐(0) 编辑
摘要: ps:这两种算法的时间复杂度,最坏和平均都是O(n^2),选择排序的最好情况下为O(n^2),冒泡排序的最好情况下为O(n).空间复杂度都是O(1),表示在随着数组的增大,花费的空间不会随之变大,例如我们的写法中用到的i、j、temp,其实可以不用temp来将两个值进行交换(问题2)。 引申问题(抽 阅读全文
posted @ 2018-09-17 20:55 leerle 阅读(1303) 评论(0) 推荐(0) 编辑
摘要: 面试经常会问到的一个问题,这个问题舒展开来,其实包含了前端(一些后端)几乎所有的知识。梳理一下,备忘。包含了一些面经中常问的问题。 有时间待续 阅读全文
posted @ 2018-09-15 23:15 leerle 阅读(215) 评论(0) 推荐(0) 编辑
摘要: 切换node版本:nvm run项目:npm run dev 阅读全文
posted @ 2018-05-31 13:24 leerle 阅读(80) 评论(0) 推荐(0) 编辑
摘要: 一句话描述:canvas是HTML5加入的用来绘制2D图像与文字的元素。 基础 简单步骤: 绘图方式: 2D上下文提供两种基本的操作。 1.填充。fillStyle来确定,fillRect来确定位置和大小。 2.描边。strokeStyle来确定,strokeRect来确定位置和大小。 实例1:画一 阅读全文
posted @ 2018-04-27 00:06 leerle 阅读(232) 评论(0) 推荐(0) 编辑
摘要: 1.利用call和apply,借助构造函数 解释一下,P.call(this)的意思,就是将P的上下文指向C的上下文。 那么,什么是上下文呢,比如说,我有一把菜刀,可以用来杀猪,那么这里我就是菜刀的上下文。你没有,但是有一天你也要去杀猪,怎么办,最简单的方式就是向我借,而不是自己去买,向我借就是说菜 阅读全文
posted @ 2018-03-13 16:48 leerle 阅读(142) 评论(0) 推荐(0) 编辑
摘要: //第一种,最常见的,不解释 var M = function(){ } var o = new M(); //第二种,和第一种其实是一样的 var o = {name:"pig"};//o为对象 var o1 = new Object({name:"pig"}) //第三种,采用了原型链 var P = {name:"pig"};//这里创建了一个对象P,将其看作原型对象 var o = O... 阅读全文
posted @ 2018-03-13 15:29 leerle 阅读(171) 评论(0) 推荐(0) 编辑
摘要: 原型链作为js中最难的一部分,特此将自己的理解记录下来,以免遗忘。 一句话说,原型链就是实现继承的一种方式。换一种方式,原型链就是找原型对象。 1.先说说构造函数: 构造函数是一种特殊的函数,学过java的同学应该知道,他就是在创建对象时初始化对象的,也就是给new出来的实例对象进行赋值的,当然那些 阅读全文
posted @ 2018-03-13 15:11 leerle 阅读(421) 评论(0) 推荐(0) 编辑
摘要: 阅读全文
posted @ 2018-03-08 10:52 leerle 阅读(169) 评论(0) 推荐(0) 编辑
摘要: 6步连接数据库: 优化: https://www.cnblogs.com/justlove/p/6946032.html 阅读全文
posted @ 2018-03-05 21:07 leerle 阅读(412) 评论(0) 推荐(0) 编辑