冯淼森
冯淼森
mark
``` function findIds(list, value) { return dfs(list, value); } function dfs(list, value) { const stack = [...list]; while (stack.length) { const cur = stack.pop(); // 找到目标节点,递归结束 if (cur.id === value)...
> .then()当然是同步执行,只不过是.then的cb被放入了微任务队列,产生了异步执行 更详细一点的说法是等到 promise变为 resolved状态的时候,then注册的回调函数才被放入到微任务队列中,等待调用执行
```js function convert(list){ let res = []; let map = new Map(); list.map(item => { map.set(item.id, item); if(item.parentId == 0){ res.push(item); }else{ let current = map.get(item.parentId); current.children = current.children ||...
https://leetcode-cn.com/problems/median-of-two-sorted-arrays/solution/
``` /** * 因为已经是有序数组,所以不需要递归调用来排序,只需要借鉴归并排序中两个有序数组合并的算法就可以 * @param {*} nums1 * @param {*} nums2 */ function findMidValue(nums1, nums2) { let nums = []; //合并两个有序数组 while (nums1.length && nums2.length) { if (nums1[0] <...
很实用的参考
mark
经典的滑动窗口算法题 ```js var lengthOfLongestSubstring = function (s) { if (s.length < 2) { return s.length; } let window = new Map(); let left = 0; let right = 0; let...