- 博客(31)
- 收藏
- 关注
原创 day30打卡
组合问题:N个数里面按一定规则找出k个数的集合排列问题:N个数按一定规则全排列,有几种排列方式切割问题:一个字符串按一定规则有几种切割方式子集问题:一个N个数的集合里有多少符合条件的子集棋盘问题:N皇后,解数独等等。
2024-01-26 14:52:45 505
原创 day30打卡
组合问题:N个数里面按一定规则找出k个数的集合排列问题:N个数按一定规则全排列,有几种排列方式切割问题:一个字符串按一定规则有几种切割方式子集问题:一个N个数的集合里有多少符合条件的子集棋盘问题:N皇后,解数独等等。
2024-01-25 11:33:20 326
原创 day23打卡
28. 修剪二叉搜索树递归法var trimBST = function (root,low,high) { if(root === null) { return null; } if(root.val < low) { let right = trimBST(root.right, low, high); return right; } if(root.val > high) { l
2024-01-18 16:13:59 399 1
原创 day16打卡
这种难以理解的递归逻辑可以干脆不理解,直接按照手感知道left和right会返回左右子树的最大深度就行了。的最长简单路径边的条数或者节点数(取决于深度从0开始还是从1开始)简单路径边的条数或者节点数(取决于高度从0开始还是从1开始)二叉树节点的深度:指从根节点到。二叉树节点的高度:指从该节点到。而且递归的理解也在于理解回溯。最小深度是从根节点到。
2024-01-12 11:17:37 348 1
原创 day10打卡
js数组的push和pop是尾进尾出,push和shift是尾进头出。用一个队列实现栈,只要在入栈时将队列里原来的元素全出队再入队就可以。用两个栈实现队列(只能用push和pop)。栈是先进后出,队列是先进先出。
2024-01-05 15:15:38 378 1
原创 day8打卡
简单的双指针法,判断条件为left < right。不使用额外的空间,即空间复杂度O(1)利用上一问的reverse函数。使用js的字符串操作API。
2024-01-04 16:17:13 363 1
原创 day2打卡
通过一个循环移动两个指针,具体来讲,循环移动右指针,判断sum是否满足条件移动左指针,时间复杂度O(n)。数组有序,则平方后的最大值只可能在数组两端,可以考虑使用两个指针分别指在起始位置和末尾位置。平方后排序,时间复杂度O(n+sort算法)通过offset控制,使用左闭右开的区间。排序的整数数组 ,返回。组成的新数组,要求也按。测试未通过,原因不明。
2023-12-28 12:10:59 371 1
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人