随想

代码随想录算法训练营第三天 | 203.移除链表元素 707.设计链表 206.反转链表

LeetCode 203.移除链表元素 视频链接: LeetCode203 思路: 根据链表的性质,将目标值对应的节点保存在一个临时节点中,再重新设置cur下一个节点,再将临时节点进行删除 class Solution { public: ListNode* removeElements(ListN ......
随想录 训练营 随想 算法 元素

代码随想录day4链表2

day4 24. 两两交换链表中的节点19.删除链表的倒数第N个节点 面试题 02.07. 链表相交 142.环形链表II 总结 资料来源:代码随想录 (programmercarl.com) 5.两两交换链表中的节点 class Solution { private: /* data */ pub ......
随想录 随想 代码 day4 day

代码随想训练营第五十二天(Python)| 300.最长递增子序列、674. 最长连续递增序列、718. 最长重复子数组

300.最长递增子序列 class Solution: def lengthOfLIS(self, nums: List[int]) -> int: if len(nums) <= 1: return len(nums) # dp 数组代表以 nums[i] 结尾的最长递增子序列长度为 dp[i] ......
序列 训练营 数组 随想 代码

代码随想录day3链表1

链表理论基础203.移除链表元素707.设计链表206.反转链表 资料来源:代码随想录 (programmercarl.com) 1 链表理论基础 定义:是一种通过指针串联在一起的线性结构,每一个节点由两部分组成,一个是数据域一个是指针域(存放指向下一个节点的指针),最后一个节点的指针域指向null ......
随想录 随想 代码 day3 day

代码随想录算法训练营第二天 | 977.有序数组的平方 ,209.长度最小的子数组 ,59.螺旋矩阵II

LeetCode 977.有序数组的平方 视频连接: LeetCode 977 思路: 利用双指针,通过首指针和尾指针的平方值比较,大的那个装入新的vector数组中,然后再更新指针。 class Solution { public: vector<int> sortedSquares(vector ......
数组 随想录 训练营 矩阵 螺旋

代码随想录day3链表开始

链表理论基础; 资料来源:代码随想录 (programmercarl.com) 1 链表理论基础 定义:是一种通过指针串联在一起的线性结构,每一个节点由两部分组成,一个是数据域一个是指针域(存放指向下一个节点的指针),最后一个节点的指针域指向null(空指针的意思)。 1.1链表类型 单链表 双链表 ......
随想录 随想 代码 day3 day

代码随想训练营第四十五天(Python)| 70. 爬楼梯 (进阶)、322. 零钱兑换 、 279.完全平方数

70. 爬楼梯 (进阶) 1、使用 01 背包解法 class Solution: def climbStairs(self, n: int) -> int: # dp 数组代表爬上第 i 阶有 dp[j] 种方法 dp = [0] * (n + 1) dp[0] = 1 m = 2 # 排列先背包 ......
零钱 训练营 随想 楼梯 代码

代码随想训练营第四十四天(Python)| 完全背包、518. 零钱兑换 II 、377. 组合总和 Ⅳ

[完全背包] 有N件物品和一个最多能背重量为W的背包。第i件物品的重量是weight[i],得到的价值是value[i] 。每件物品都有无限个(也就是可以放入背包多次),求解将哪些物品装入背包里物品价值总和最大。 1、先遍历物品再遍历背包 def all_bag(weight, value, bag ......
零钱 训练营 总和 随想 背包

代码随想录day2

977.有序数组的平方 ,209.长度最小的子数组 ,59.螺旋矩阵II ,总结 1有序数组的平方 ​ 给你一个按 非递减顺序 排序的整数数组 nums,返回 每个数字的平方 组成的新数组,要求也按 非递减顺序 排序。 2 长度最小的子数组 给定一个含有 n 个正整数的数组和一个正整数 s ,找出该 ......
随想录 随想 代码 day2 day

代码随想录算法训练营第一天 | ( Part 1 ) 704. 二分查找

代码随想录算法训练营第一天 | ( Part 1 ) 704. 二分查找 704. 二分查找 题目链接:https://leetcode.cn/problems/binary-search/ 文档链接:https://programmercarl.com/0704.%E4%BA%8C%E5%88%8 ......
随想录 训练营 随想 算法 代码

代码随想录算法训练营第一天| 704. 二分查找、27. 移除元素

LeetCode 704 二分查找 题目链接 : LeetCode704 左闭右闭: 视频讲解: 手把手带你撕出正确的二分法 思路: 在循环条件中注明left<=right,即[left,right] class Solution { public: int search(vector<int>& ......
随想录 训练营 随想 算法 元素

思维题随想(一)

1. 洛谷 P9678 [ICPC2022 Jinan R] Tree Distance 一个套路:支配点对。在本题中的意思是,若 $x_1\leq x_2\leq y_2\leq y_1$ 且 $dis(x_2,y_2)\leq dis(x_1,y_1)$,那么 $(x_2,y_2)$ 就支配了 ......
随想 思维

代码随想录-哈希

242.有效的字母异位词 https://leetcode.cn/problems/valid-anagram/description/ class Solution { public: bool isAnagram(string s, string t) { if(s.size()!=t.size ......
随想录 随想 代码

代码随想训练营第四十三天(Python)| 1049.最后一块石头的重量II、 494. 目标和 、 474.一和零

1049.最后一块石头的重量II class Solution: def lastStoneWeightII(self, stones: List[int]) -> int: total = sum(stones) target = total // 2 dp = [0] * (target + 1 ......
训练营 随想 重量 石头 目标

代码随想训练营第四十二天(Python)| 0-1 背包基础、416. 分割等和子集

[背包基础] 题目:有n件物品和一个最多能背重量为w 的背包。第i件物品的重量是weight[i],得到的价值是value[i] 。每件物品只能用一次,求解将哪些物品装入背包里物品价值总和最大。 1、二维方式解决背包问题 class Solution: def solve_bag(self, wei ......
子集 训练营 随想 背包 代码

代码随想训练营第四十一天(Python)| 不同的二叉树搜索树

96.不同的二叉搜索树 1、关键点找出状态转移方程 class Solution: def numTrees(self, n: int) -> int: # 创建 dp 数组, dp[i] 代表节点数为 i 的二叉搜索树数量 dp = [0]*(n+1) # 初始化数组 dp[0] = 1 # 遍历 ......
训练营 随想 代码 Python

代码随想训练营第三十九天(Python)| 62.不同路径、63. 不同路径 II、343. 整数拆分

62.不同路径 class Solution: def uniquePaths(self, m: int, n: int) -> int: # dp[i][j] 代表到达 dp[i][j] 有多少不同路径 dp = [[0]*n for _ in range(m)] # 初始化 for i in r ......
路径 训练营 整数 九天 随想

代码随想录-链表

203.移除链表元素 https://leetcode.cn/problems/remove-linked-list-elements/description/ /** * Definition for singly-linked list. * struct ListNode { * int va ......
随想录 随想 代码

代码随想录-数组

704.二分查找 https://leetcode.cn/problems/binary-search/description/ class Solution { public: int search(vector<int>& nums, int target) { int left = 0; in ......
随想录 数组 随想 代码

编程随想曲周刊(第55期)

这里记录每周的所见所闻,周日发布。点击阅读原文可以直接访问文章链接。 文章 关于王自如和董明珠的那点事 虽远必诛!缅北明家被一网打尽,网友:战狼3都不敢这么拍! 我们对世界的假设,几乎决定了我们的个人命运 失败不是人生终点,和丈夫在一起,就有希望!|叶檀回信 2023国庆假期能做的6件小事 生活 装 ......
随想曲 随想 周刊

代码随想录算法训练营第十一天 | ● 20. 有效的括号 ● 1047. 删除字符串中的所有相邻重复项 ● 150. 逆波兰表达式求值

今日学习的内容 ● 20. 有效的括号 var isValid = function(s) { let stack = [] ; for(let i = 0 ;i < s.length ; i++){ let temp = s[i]; if(temp == '('){ stack.push(')') ......

代码随想录算法训练营第十天 | ● 理论基础 ● 232.用栈实现队列 ● 225. 用队列实现栈

今日学习的文章链接和视频链接 https://programmercarl.com/栈与队列理论基础.html ● 232.用栈实现队列 var MyQueue = function() { this.stackIn = []; this.stackOut = [] }; /** * @param ......
队列 随想录 训练营 随想 算法

代码随想录算法训练营第十天 | ●28. 实现 strStr() ●459.重复的子字符串 ●字符串总结 ●双指针回顾

今日学习的文章链接和视频链接 https://programmercarl.com/字符串总结.html#什么是字符串 https://programmercarl.com/双指针总结.html#数组篇 ●28. 实现 strStr() var strStr = function (haystack ......
字符串 字符 随想录 训练营 指针

代码随想录算法训练营第八天 | ● 344.反转字符串 ● 541. 反转字符串II ● 卡码网:54.替换数字 ● 151.翻转字符串里的单词 ● 卡码网:55.右旋转字符串

今日学习内容 ● 344.反转字符串 var reverseString = function(s) { // return s.reverse(); for(let i = 0 , j = s.length-1;i < Math.floor(s.length/2) ; i++,j--){ [s[i ......
字符串 字符 随想录 训练营 随想

代码随想录算法训练营第七天 | ● 454.四数相加II ● 383. 赎金信 ● 15. 三数之和 ● 18. 四数之和

今日学习的文章链接和视频链接 https://programmercarl.com/链表理论基础.html ● 454.四数相加II var fourSumCount = function(nums1, nums2, nums3, nums4) { let count = 0 let map = n ......
之和 随想录 训练营 随想 算法

代码随想录算法训练营第六天 |● 哈希表理论基础 ● 242.有效的字母异位词 ● 349. 两个数组的交集 ● 202. 快乐数 ● 1. 两数之和

今日学习的文章链接和视频链接 https://programmercarl.com/哈希表理论基础.html 242.有效的字母异位词 var isAnagram = function(s, t) { if(s.length !== t.length) return false let map = ......
随想录 之和 训练营 数组 交集

代码随想训练营第三十七天(Python)| 738.单调递增的数字、968.监控二叉树

738.单调递增的数字 class Solution: def monotoneIncreasingDigits(self, n: int) -> int: # 主要思路当前数字比前面数字小时。前面数字 -1,当前数字变2为 9 str_n = str(n) for i in range(len(s ......
训练营 随想 代码 数字 Python

代码随想训练营第三十六天(Python)| 435. 无重叠区间、763.划分字母区间、56. 合并区间

435. 无重叠区间 class Solution: def eraseOverlapIntervals(self, intervals: List[List[int]]) -> int: intervals.sort(key=lambda x: x[0]) count = 0 for i in r ......
区间 训练营 随想 字母 代码

代码随想训练营第三十五天打卡(Python)| 860.柠檬水找零、406.根据身高重建队列、452. 用最少数量的箭引爆气球

860.柠檬水找零 class Solution: def lemonadeChange(self, bills: List[int]) -> bool: five, ten, twenty = 0, 0, 0 for bill in bills: if bill == 5: five += 1 e ......
柠檬水 队列 训练营 气球 随想

代码随想训练营第三十四天(Python)| 1005.K次取反后最大化的数组和、134. 加油站、135. 分发糖果

1005.K次取反后最大化的数组和 class Solution: def largestSumAfterKNegations(self, nums: List[int], k: int) -> int: nums.sort(key=lambda x:abs(x), reverse=True) fo ......
训练营 数组 随想 糖果 加油站