- 博客(7)
- 收藏
- 关注
原创 【Leetcode Hot100】错题复习(Python版)
给定一个经过编码的字符串,返回它解码后的字符串。编码规则为:,表示其中方括号内部的正好重复k次。注意k保证为正整数。你可以认为输入字符串总是有效的;输入字符串中没有额外的空格,且输入的方括号总是符合格式要求的。此外,你可以认为原始数据不包含数字,所有的数字只表示重复的次数k,例如不会出现像3a或2[4]的输入。
2024-09-05 12:00:00
893
原创 【代码随想录】回溯算法(Python版)
①参数及返回值:集合candidites,目标值target,单一结果总和sum,单一结果path,结果集res,for循环起始位置startindex;③回溯搜索的遍历过程:取出index指向的数字的字符集,遍历字符集,加入s,index指向下一个数字,进一步递归,递归结束后,撤销处理结果。③单一搜索逻辑:因为要以左括号开始,如果open<n,则将path[i]='(',递归(i+1,open+1,path,res,n)否则将当前节点标记为使用过,然后加入到path,递归搜索,递归返回后撤销操作。
2024-08-25 12:00:00
824
原创 【LeetCode Hot100】二叉树复习(Python版)
(2)终止条件:因为需要都小于和都大于,因此用一个遍历记录节点的值,一旦出现根节点的值大于后续节点,返回False,否则更新节点值。(3)单层递归逻辑:记录右子树,递归左子树,递归右子树(找到最下面的节点),将左子树移到右子树,然后将原来的右子树移到最右端。:前序序列的第一个数为根节点,找到在中序序列的位置,划分为左右两个子树,找到左右两个子树的元素在前序序列的范围,递归上述过程。如果p和q位于根节点的两侧,返回根节点,如果p和q位于同一侧,则返回离根节点最近的节点。(1)参数:root,p,q;
2024-08-20 17:00:00
990
原创 【代码随想录】数组篇
一、二分查找给定一个n个元素有序的(升序)整型数组nums和一个目标值target,写一个函数搜索nums中的target,如果目标值存在返回下标,否则返回-1。二分查找的前提有序数组,无重复元素二分法的写法1. 左闭右闭,即[ left, right ]而(左 trg : 右 = mid-12. 左闭右开,即[left, right)而左 目标:右=mid题目与代码在排序数组中查找元素的第一个和最后一个位置。
2024-08-03 14:20:33
691
原创 【代码随想录】单调栈复习
c. 当前元素大于栈顶元素:判断栈顶元素是否在nums1中出现过,(注意栈里的元素是nums2的元素),如果出现过,开始记录结果(因为当前元素在栈顶元素的右边,如果比它大,则是第一个比它大的元素),出栈。首位加上0,若数组位[8,6,4,2],8入栈后,6与8比较,8弹出,此时栈空,6入栈,4与6比较,6弹出,此时栈空,4入栈,由此重复,result为0。如果求一个元素右边第一个更大元素,单调栈就是递增(从栈头到栈底)的,如果求一个元素右边第一个更小元素,单调栈就是递减的。天,下一个更高温度出现在几天后。
2024-07-15 12:00:00
694
原创 【代码随想录】动态规划复习
1. 问能否装满背包或最多装多少?2. 问装满背包有几种方法?3. 问背包装满的最大价值?4. 问装满背包所有物品的最小个数?
2024-07-14 12:00:00
723
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人