01天【代码随想录算法训练营34期】 第一章 数组part01 (704. 二分查找、 27. 移除元素)
1.01天【代码随想录算法训练营34期】 第一章 数组part01 (704. 二分查找、 27. 移除元素)
2.15天【代码随想录算法训练营34期】第六章 二叉树 part02(● 层序遍历 10 ● 226.翻转二叉树 ● 101.对称二叉树 2 )3.02天【代码随想录算法训练营34期】 第一章 数组part02 ( 977.有序数组的平方 、209.长度最小的子数组、 59.螺旋矩阵II)4.03天【代码随想录算法训练营34期】第二章 链表part01(203.移除链表元素 、707.设计链表 、 206.反转链表 )5.08天【代码随想录算法训练营34期】第四章 字符串part01(● 344.反转字符串 ● 541. 反转字符串II ● 卡码网:54.替换数字 ● 151.翻转字符串里的单词 ● 卡码网:55.右旋转字符串)6.07天【代码随想录算法训练营34期】 第三章 哈希表part02(● 454.四数相加II ● 383. 赎金信 ● 15. 三数之和 ● 18. 四数之和)7.06天【代码随想录算法训练营34期】 第三章 哈希表part01(● 242.有效的字母异位词 ● 349. 两个数组的交集 ● 202. 快乐数 ● 1. 两数之和)8.04天【代码随想录算法训练营34期】 第二章 链表part02 (● 24. 两两交换链表中的节点 ● 19.删除链表的倒数第N个节点 ● 面试题 02.07. 链表相交 ● 142.环形链表II )9.18天【代码随想录算法训练营34期】● 513.找树左下角的值 ● 112. 路径总和 113.路径总和ii ● 106.从中序与后序遍历序列构造二叉树 105.从前序与中序遍历序列构造二叉树10.17天【代码随想录算法训练营34期】第六章 二叉树part04(● 110.平衡二叉树 ● 257. 二叉树的所有路径 ● 404.左叶子之和 )11.16天【代码随想录算法训练营34期】第六章 二叉树part03(● 104.二叉树的最大深度 559.n叉树的最大深度 ● 111.二叉树的最小深度 ● 222.完全二叉树的节点个数)12.14天【代码随想录算法训练营34期】 第六章 二叉树part01(● 理论基础 ● 递归遍历 ● 迭代遍历 ● 统一迭代)13.13天【代码随想录算法训练营34期】 第五章 栈与队列part03(● 239. 滑动窗口最大值 ● 347.前 K 个高频元素)14.11天【代码随想录算法训练营34期】 第五章 栈与队列part02(● 20. 有效的括号 ● 1047. 删除字符串中的所有相邻重复项 ● 150. 逆波兰表达式求值)15.10天【代码随想录算法训练营34期】 第五章 栈与队列part01(● 232.用栈实现队列 ● 225. 用队列实现栈)16.09天【代码随想录算法训练营34期】第四章 字符串part02(KMP)17.21天【代码随想录算法训练营34期】第六章 二叉树part07 ( ● 530.二叉搜索树的最小绝对差 ● 501.二叉搜索树中的众数 ● 236. 二叉树的最近公共祖先 )704. 二分查找
-
先选是[low, high]还是[low, high)还是(low, high]
-
下面选择[]
-
"while (low <= high)"还是"while (low < high)"
因为[1,1]合法,所以是<=(什么是不合法呢,比如说[2,1]) -
"high = mid - 1"还是"high = mid"
这个情况,我们已知nums[mid] > target,所以下一个区间不能包含mid,所以high = mid-1
class Solution(object):
def search(self, nums, target):
low = 0
high = len(nums) - 1
while (low <= high):
mid = (high + low) // 2
if nums[mid] == target:
return mid
elif nums[mid] > target:
high = mid - 1
else:
low = mid + 1
return -1
Complexity: O(log(n))
27. 移除元素
快慢指针
class Solution(object):
def removeElement(self, nums, val):
i = 0
j = 0
while j < len(nums):
if (nums[j] != val):
nums[i] = nums[j]
i += 1
j += 1
return i
Complexity: O(n)
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· AI 智能体引爆开源社区「GitHub 热点速览」
· 三行代码完成国际化适配,妙~啊~
· .NET Core 中如何实现缓存的预热?