7777sea

Results 23 comments of 7777sea

```js /** * Initialize your data structure here. */ var RandomizedSet = function() { this.list = []; this.map = {}; }; /** * Inserts a value to the set. Returns...

```js /** * @param {number[]} nums1 * @param {number} m * @param {number[]} nums2 * @param {number} n * @return {void} Do not return anything, modify nums1 in-place instead. */...

```js function print(n){ setTimeout((() => { console.log(n); })(), Math.floor(Math.random() * 1000)); } for(var i = 0; i < 100; i++){ print(i); } ```

> ``` > const parse = (url) => { > const l = new URL(url).searchParams; > const _params = {}; > l.forEach((v,k) => _params[k] = v); > return _params >...

> > ``` > > const parse = (url) => { > > const l = new URL(url).searchParams; > > const _params = {}; > > l.forEach((k,v) => _params[k] =...

```js const answer = (contentTpl, contentTplData, noMatchStr = "-") => { let reg = "(.*)"; const keys = []; let current = []; Object.keys(contentTplData).forEach((key) => { const index = contentTpl.indexOf(key);...

快排的原理是基于**二分法**的思想,时间复杂度比较复杂,最好的情况是O(N),最差的时候是O(N^2),所以平时说的**O(N*logN)**为其平均时间复杂度。它的**基本思想**是:通过一趟排序将要排序的数据分割成独立的两部分,其中一部分的所有数据都比另外一部分的所有数据都要小,然后再按此方法对这两部分数据分别进行快速排序,整个排序过程可以递归进行,以此达到整个数据变成有序序列。 ```js var quickSort = function(arr) {   if (arr.length

最近刚好在面试里遇到了这道题,说下当时的思路:这是一个已知结果倒推的过程,可以把过程想象为动作的倒放,即:**纸牌从桌上返回到手里的过程** 原始的扑克牌顺序存放:牌顶 => 牌底 ,用一个数组存放,base=[] 既成现实的桌面纸牌顺序:牌顶 => 牌底,res = [13, 12, 11, 10, 9, 8, 7, 6, 5, 4, 3, 2, 1] 正常操作顺序为: base 拿出第一个插入 res 前面, base 再拿出第一个换到自己的末尾, 如此重复...

> > 最近刚好在面试里遇到了这道题,说下当时的思路:这是一个已知结果倒推的过程,可以把过程想象为动作的倒放,即:**纸牌从桌上返回到手里的过程** > > 原始的扑克牌顺序存放:牌顶 => 牌底 ,用一个数组存放,base=[] > > 既成现实的桌面纸牌顺序:牌顶 => 牌底,res = [13, 12, 11, 10, 9, 8, 7, 6, 5, 4, 3, 2, 1] > >...

```js var removeDuplicates = function(s, k) { let stack = []; for(let _s of s){ const last = stack.pop(); if(!last || last[0] !== _s){ stack.push(last) stack.push(_s) }else if(last.length < k-1){...