代码编织梦想

【力扣hot100】刷题笔记day25-爱代码爱编程

前言 这几天搞工作处理数据真是类似我也,还被老板打电话push压力有点大的,还好搞的差不多了,明天再汇报,赶紧偷闲再刷几道题(可恶,被打破连更记录了)这几天刷的是动态规划,由于很成体系不适合零散刷,还是把代码随想录动态规划部分的题目快速再过一遍,代码简单但是思路也要记住 139. 单词拆分 - 力扣(LeetCode) 动态规划 class

【力扣hot100】刷题笔记day9-爱代码爱编程

前言 阴天睡得还挺舒服,9点半才醒,用刷题开启美好新一天! 141. 环形链表 - 力扣(LeetCode) 哈希表 set存走过的节点,走到重复的就有环 class Solution: def hasCycle(self, head: Optional[ListNode]) -> bool: seen = se

【力扣hot100】刷题笔记day5-爱代码爱编程

前言 回学校了,荒废了半天之后打算奋发图强猛猛刷题,找实习!赚钱!! 560. 和为 K 的子数组 - 力扣(LeetCode) 前缀法 + 哈希表 这个题解解释比官方清晰,截个图方便看,另一个题解的代码简洁计算前缀和并统计前缀和个数,遇到相减为k的情况就把前面个数加上 class Solution: def subarraySum(

【力扣hot100】刷题笔记day3-爱代码爱编程

前言 以撒真是一不小心就玩太久了,终于解锁骨哥嘞,抓紧来刷题,今天是easy双指针! 283. 移动零 - 力扣(LeetCode) 一个指针遍历找非0,一个指针用于把0换到后面 class Solution(object): def moveZeroes(self, nums): pre = 0 # 用于交换前面的0

【力扣hot100】刷题笔记day15-爱代码爱编程

前言 今天要刷的是图论,还没学过,先看看《代码随想录》这部分的基础 深搜DFS理论基础 深搜三部曲 确认递归函数、参数确认终止条件处理目前搜索节点出发的路径 代码框架 void dfs(参数) { if (终止条件) { 存放结果; return; } for (选择:本节点所

【力扣hot100】刷题笔记day6-爱代码爱编程

前言 今天是社畜开工第一天,刷题刷题刷题💪 53. 最大子数组和 - 力扣(LeetCode) 贪心法 连续子数组累加和小于零就重新累加,【代码随想录】刷题笔记Day34-CSDN博客 class Solution: def maxSubArray(self, nums: List[int]) -> in

【力扣hot100】刷题笔记day20-爱代码爱编程

前言 今天学习了一句话“自己如果不努力,屎都吃不上热乎的”,话糙理不糙,与君共勉 35. 搜索插入位置 - 力扣(LeetCode) 二分查找 class Solution: def searchInsert(self, nums: List[int], target: int) -> int: n = len

【力扣hot100】刷题笔记day19-爱代码爱编程

前言 回溯回溯回溯!早上整理档案竟然用了桶排序,不愧是算法狂魔们 79. 单词搜索 - 力扣(LeetCode) DFS class Solution: def exist(self, board: List[List[str]], word: str) -> bool: m, n = len(board),

【力扣hot100】刷题笔记day10-爱代码爱编程

前言 一鼓作气把链表给刷完!!中等题困难题冲冲冲啊啊啊! 25. K 个一组翻转链表 - 力扣(LeetCode) 模拟 class Solution: def reverseKGroup(self, head: Optional[ListNode], k: int) -> Optional[ListNode]:

【力扣hot100】刷题笔记day11-爱代码爱编程

前言 科研不顺啊......又不想搞了,随便弄弄吧,多花点时间刷题,今天开启二叉树! 94. 二叉树的中序遍历 - 力扣(LeetCode) 递归 # 最简单递归 class Solution: def inorderTraversal(self, root: TreeNode) -> List[int]: i

【力扣hot100】刷题笔记day2-爱代码爱编程

前言 hot100!开刷!不熟悉python就cv大法先,理清楚思路更重要 哈希 1. 两数之和 - 力扣(LeetCode) 暴力法 能过,遍历两遍求和是否为target class Solution(object): def twoSum(self, nums, target): n = len(nums)

【力扣hot100】刷题笔记day7-爱代码爱编程

前言 身边同学已经陆陆续续回来啦,舍友都开始投简历了,我也要加油啦!刷完hot100就投! 73. 矩阵置零 - 力扣(LeetCode) 标记数组:空间复杂度O(m+n) class Solution: def setZeroes(self, matrix: List[List[int]]) -> None:

【力扣hot100】刷题笔记day8-爱代码爱编程

前言 到了大章节【链表】了,争取两三天给它搞定!! 160. 相交链表 - 力扣(LeetCode)】 双指针 参考题解,相比于求长度+右对齐再一起出发的方法简洁多了 class Solution: def getIntersectionNode(self, headA: ListNode, headB: ListNode) ->

【力扣hot100】刷题笔记day14-爱代码爱编程

前言 又是新的一周,快乐的周一,快乐地刷题,今天把链表搞完再干活! 114. 二叉树展开为链表 - 力扣(LeetCode) 前序遍历 class Solution: def flatten(self, root: Optional[TreeNode]) -> None: if not root:

【力扣hot100】刷题笔记day1-爱代码爱编程

前言 既然打算年后去找算法的实习,所以之后想直接改用python刷hot100了(新坑芜湖~),在B站大学找到这个刷题教程,先快速过一遍里面提到的python语法 Python数组 # 创建数组 a = [] # 添加元素,O(1) a.append(1) a.append(2) a.append(3) # [1, 2, 3] # 插入元素,O(

【力扣hot100】刷题笔记day17-爱代码爱编程

前言 今天竟然不用开组会!天大的好消息,安心刷题了 46. 全排列 - 力扣(LeetCode) 回溯(排列) class Solution: def permute(self, nums: List[int]) -> List[List[int]]: # 回溯 def backtrack():