错不真气天天今
错不真气天天今
全部文章
问题总结
阅读笔记(16)
归档
标签
去牛客网
登录
/
注册
错不真气天天今的博客
hey,guys. #email:iamsevenlee@163.com
全部文章
/ 问题总结
(共244篇)
ES5中模拟静态成员和ES6类中的静态成员
来自专栏
ES5中直接将方法添加到构造函数中来模拟静态成员是一种常见的模式。 function PersonType(name){ this.name = name; } //静态方法 PersonType.create = function(name){ return new PersonT...
2020-12-26
0
557
ES5近类结构和ES6类的声明
来自专栏
ES5及早期版本没有类的概念,最相近的思路是创建一个自定义类型:创建一个构造函数,然后定义另一个方法并赋值给构造函数的原型。 ES5:构造函数方法 function PersonType(name){ this.name = name; } PersonType.prototype.say...
2020-12-25
0
375
ES5手写一个迭代器(iterator)
来自专栏
//使用@@iterator对象可以创造一个迭代器, let iterator = number[Symbol.iterator](); // console.log(iterator.next().value); function createIterator(items){ var i...
2020-12-24
0
550
二路归并排序
来自专栏
var arr = [49, 38, 65, 97, 76, 13, 27, 48, 55, 4]; function MergeSort(arr) { var len = arr.length; if(len<=1){ ret...
2020-12-18
0
475
堆排序(大根堆)
来自专栏
var arr = [49,38,27,97,76,13,65,50]; function MaxHeap(arr,size,i){ //左子节点 var left = i*2+1; //右子节点 var right = i*2...
2020-12-18
0
547
直接选择排序
来自专栏
//选择排序(Selection-sort)是一种简单直观的排序算法。它的工作原理:首先在未排序序列中找到最小(大)元素,存放到排序序列的起始位置, //然后,再从剩余未排序元素中继续寻找最小(大)元素,然后放到已排序序列的末尾。以此类推,直到所有元素均排序完毕。 //超级稳定的算法 时间复杂度永...
2020-12-18
0
517
快速排序
来自专栏
//时间复杂度分析: //最好的情况:整个数组被分为两个长度相等的子数组时, 时间复杂度为 O(nlogn) //最坏的情况:待排序的序列为正序或者逆序,每次划分只得到一个比上一次划分少一个记录的子序列 (退化成冒泡排序的情况)时间复杂度为O(n的平方) //平均时间复杂度为:O(nlogn)有可能...
2020-12-18
0
585
冒泡排序
来自专栏
//1、比较相邻的两个元素,如果前一个比后一个大,则交换位置。 // 2、比较完第一轮的时候,最后一个元素是最大的元素。 // 3、这时候最后一个元素是最大的,所以最后一个元素就不需要参与比较大小。 //时间复杂度:最好的情况原本就是有序O(n) 最坏的情况 O(n的平方) 平均O(n的平方) /...
2020-12-17
0
483
希尔排序(缩小增量排序)
来自专栏
//选择一个增量序列t1,t2,…,tk,其中ti>tj,tk=1; //按增量序列个数k,对序列进行k 趟排序; //每趟排序,根据对应的增量ti,将待排序列分割成若干长度为m 的子序列,分别对各子表进行直接插入排序。 //仅增量因子为1 时,整个序列作为一个表来处理,表长度即为整个序列的长...
2020-12-17
0
580
直接插入排序
来自专栏
//从第一个元素开始,该元素可以认为已经被排序; // 取出下一个元素,在已经排序的元素序列中从后向前扫描; // 如果该元素(已排序)大于新元素,将该元素移到下一位置; // 重复步骤3,直到找到已排序的元素小于或者等于新元素的位置; // 将新元素插入到该位置后; // 重复步骤2~5。 //...
2020-12-17
0
388
首页
上一页
7
8
9
10
11
12
13
14
15
16
下一页
末页