01 2025 档案

摘要:一、git status命令 作用:用于显示当前工作目录和暂存区的状态。 命令格式git status 显示内容详解 On branch master:当前所在的分支是master分支 Untracked files:尚【未跟踪】的文件,通常是新建的文件,此时可以使用git add file将其添加 阅读全文
posted @ 2025-01-20 11:31 ouyangxx 阅读(33) 评论(0) 推荐(0) 编辑
摘要:一、主要区域 工作目录 作用:本地系统中的文件夹 文件状态 未跟踪:文件刚添加到工作目录,还没有被Git管理(还没有git add) 已跟踪:Git已经对这个文件进行过管理,Git在本地仓库中有这个文件的历史记录。 未修改:该文件没有再做任何修改。 已修改:修改过了,但是没有使用git add来通知 阅读全文
posted @ 2025-01-15 16:11 ouyangxx 阅读(10) 评论(0) 推荐(0) 编辑
摘要:一、场景说明 本地有文件 想在github创建一个远程仓库 在本地修改,同时同步到远端 二、流程 设置用户名和邮箱 目的:标识每次提交者的身份 设置全局用户名:git config --global user.name "Your Name" 设置全局邮箱:git config --global u 阅读全文
posted @ 2025-01-14 20:51 ouyangxx 阅读(11) 评论(0) 推荐(0) 编辑
摘要:一、分类 系统级配置--system 作用范围:所有用户和仓库 位置:Git安装目录中的etc/gitconfig中 优先级:优先级最低 全局配置--global 作用范围:影响当前用户的所有仓库 位置:当前用户主目录下的.gitconfig文件中 优先级:只高于系统及配置 本地配置--local 阅读全文
posted @ 2025-01-14 11:30 ouyangxx 阅读(8) 评论(0) 推荐(0) 编辑
摘要:[题目链接](210. 课程表 II - 力扣(LeetCode)) 解题思路:和[课程表Ⅰ](207. 课程表 - ouyangxx - 博客园)思路一致,只不过每次都要收集答案。 代码 class Solution: class node: def __init__(self): self.pr 阅读全文
posted @ 2025-01-13 11:19 ouyangxx 阅读(3) 评论(0) 推荐(0) 编辑
摘要:[题目链接](208. 实现 Trie (前缀树) - 力扣(LeetCode)) 解题思路:前缀树,每个节点的内容:pre:经过该节点的数目;end:以该节点结尾的数目;nexts:下一条路径。前缀树有一个根节点,每次查找、插入、删除都要从这个节点开始。 插入时,遍历该字符串,先从根节点开始,查看 阅读全文
posted @ 2025-01-10 09:39 ouyangxx 阅读(6) 评论(0) 推荐(0) 编辑
摘要:[题目链接](207. 课程表 - 力扣(LeetCode)) 解题思路:拓扑排序。有一个可以完成的课程集合set1,有一个需要完成的课程集合set2。每次从set1中拿出一个课程,然后把其影响的节点的入度减减,如果减成了0,则该节点,变成了可以完成的课程,加入set1。依次做下去,如果set2空了 阅读全文
posted @ 2025-01-09 16:21 ouyangxx 阅读(10) 评论(0) 推荐(0) 编辑
摘要:[题目链接](202. 快乐数 - 力扣(LeetCode)) 解题思路:不是快乐数,那么就会一直循环。所以只需要按照题目意思,每次计算一个数就放入set中,如果遇到1了,直接返回True,如果之前已经存在过set中了,那么直接返回False,否则加入set中 代码 class Solution: 阅读全文
posted @ 2025-01-09 15:58 ouyangxx 阅读(5) 评论(0) 推荐(0) 编辑
摘要:[题目链接](200. 岛屿数量 - 力扣(LeetCode)) 解题思路:用感染函数,遇到1,岛屿数目就加1,然后递归把上下左右变成2(以免下次遇到相同的岛屿) 代码 class Solution: # 感染函数,将[i, j]感染 def process(self, grid, i, j): i 阅读全文
posted @ 2025-01-09 15:43 ouyangxx 阅读(3) 评论(0) 推荐(0) 编辑
摘要:[题目链接](198. 打家劫舍 - 力扣(LeetCode)) 解题思路:比较经典的动态规划。从左往右尝试。来到index位置,有两种选择,不偷,那么就去index+1位置做决策,偷,那么就去index + 2做决策。直接加dp表即可。 代码 class Solution: def process 阅读全文
posted @ 2025-01-09 15:37 ouyangxx 阅读(9) 评论(0) 推荐(0) 编辑
摘要:[题目链接](191. 位1的个数 - 力扣(LeetCode)) 解题思路:当成二进制处理即可 代码 class Solution: def hammingWeight(self, n: int) -> int: ans = 0 while n != 0: ans += n % 2 n //= 2 阅读全文
posted @ 2025-01-09 15:33 ouyangxx 阅读(2) 评论(0) 推荐(0) 编辑
摘要:[题目链接](189. 轮转数组 - 力扣(LeetCode)) 解题思路:直接举例子,nums = [1,2,3,4,5,6,7],k=3,步骤:先把5,6,7安排好,即5,6,7,4,1,2,3这是怎么来的?其实可以想象成两部分,一部分是1,2,3,4,另一部分是5,6,7先分别交换,1和5,2 阅读全文
posted @ 2025-01-09 15:30 ouyangxx 阅读(5) 评论(0) 推荐(0) 编辑
摘要:[题目链接](188. 买卖股票的最佳时机 IV - 力扣(LeetCode)) 解题思路:来到i位置,决定买或者不卖,动态规划,直接加dp表即可。 需要多一个状态位,来到i时,手中是否有股票 代码 class Solution: # 当前来到index位置,还可以买k次,state为0,则手里没有 阅读全文
posted @ 2025-01-09 14:07 ouyangxx 阅读(4) 评论(0) 推荐(0) 编辑
摘要:[题目链接](179. 最大数 - 力扣(LeetCode)) 解题思路:x拼接y大于y拼接x后,那么x就应该放前面。自定义排序就行了。 还要注意把前导0给去掉 代码 class Solution: def myCompare(self, x, y): # 比较两个字符串拼接后的结果 if str( 阅读全文
posted @ 2025-01-09 11:15 ouyangxx 阅读(3) 评论(0) 推荐(0) 编辑
摘要:[题目链接](172. 阶乘后的零 - 力扣(LeetCode)) 解题思路:首先得知道,n!一共有多少个0,取决于什么。取决于1~n所有2的因数的个数和5的因数的个数。因为0,其实就是2*5得到的。 怎么用对数时间计算1~n,2因子的个数? 一种特殊的是2的幂次的,比如2、4、8、16,含有2因子 阅读全文
posted @ 2025-01-09 10:58 ouyangxx 阅读(3) 评论(0) 推荐(0) 编辑
摘要:[题目链接](171. Excel 表列序号 - 力扣(LeetCode)) 解题思路:其实就是26进制 代码 class Solution: def titleToNumber(self, columnTitle: str) -> int: ans = 0 for s in columnTitle 阅读全文
posted @ 2025-01-09 10:34 ouyangxx 阅读(8) 评论(0) 推荐(0) 编辑
摘要:[题目链接](169. 多数元素 - 力扣(LeetCode)) 解题思路:想象一个打怪的场景。有很多个部落,不同的部落之间会相互攻击。找到大于一半数目的元素。假设是x这个部落。就算其他的部落全部一起攻击这个部落,这个部落仍然会赢,因为大于了一半。 用一个变量:HP,代表现在还剩的血量 另一个变量c 阅读全文
posted @ 2025-01-09 10:12 ouyangxx 阅读(3) 评论(0) 推荐(0) 编辑
摘要:[题目链接](162. 寻找峰值 - 力扣(LeetCode)) 解题思路:题目有一个很重要的前提是:对于所有有效的 i 都有 nums[i] != nums[i + 1]。先看开头和结尾,如果nums[0] > nums[1]或者nums[n - 1] > nums[n - 2],那么可以直接返回 阅读全文
posted @ 2025-01-09 10:04 ouyangxx 阅读(4) 评论(0) 推荐(0) 编辑
摘要:[题目连接](160. 相交链表 - 力扣(LeetCode)) 解题思路:短链表长度为x,长链表长度为y,想让长链表走y - x,然后两个链表同时走,如果相遇直接返回,否则返回空即可。 注意,题目明确了,两个链表无环 代码 class Solution: def getIntersectionNo 阅读全文
posted @ 2025-01-09 09:35 ouyangxx 阅读(3) 评论(0) 推荐(0) 编辑
摘要:[题目链接](155. 最小栈 - 力扣(LeetCode)) 解题思路:一个栈用来存储数据(数据栈),另一个栈用来放当前的最小值(最小栈)。 当前最小值是什么?push一个数x,如果最小栈不为空,且最小栈栈顶元素小于x,那么接着push最小栈栈顶元素;否则push当前的x pop时,两个栈同时po 阅读全文
posted @ 2025-01-09 09:22 ouyangxx 阅读(3) 评论(0) 推荐(0) 编辑
摘要:[题目链接](152. 乘积最大子数组 - 力扣(LeetCode)) 解题思路:子数组问题,考虑【以i结尾】结果是什么,求出所有的结果,最大的那个就是结果。 【以i结尾】结果是什么?我们可以利用【i-1】计算过的内容。 nums[i]如果是0,那么结果就是0 nums[i]如果大于0,那么我们就希 阅读全文
posted @ 2025-01-08 21:22 ouyangxx 阅读(8) 评论(0) 推荐(0) 编辑
摘要:[题目链接](150. 逆波兰表达式求值 - 力扣(LeetCode)) 解题思路:用一个栈,遇到数字压进去,遇到运算符则计算后压入栈 代码 class Solution: def evalRPN(self, tokens: List[str]) -> int: stack = [] ans = 0 阅读全文
posted @ 2025-01-08 21:01 ouyangxx 阅读(2) 评论(0) 推荐(0) 编辑
摘要:[题目链接](149. 直线上最多的点数 - 力扣(LeetCode)) 解题思路:两个for循环。某一条直线,必须经过第一个点,最多经过多少点?某一条直线,必须经过第二个点,最多经过多少个点?以此类推,最多的那个结果,就是答案。 怎么知道必须经过某个点的【直线】,最多经过多少点?例如现在必须经过的 阅读全文
posted @ 2025-01-08 20:18 ouyangxx 阅读(7) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示