03 2024 档案

摘要:自己写的,好像有点复杂: class Solution: def wordPattern(self, pattern: str, s: str) -> bool: # 将字符串 s 按空格切分成单词列表 mystr = s.split() # 创建一个空字典,用于存储字符和其出现位置的映射 mydi 阅读全文
posted @ 2024-03-29 13:54 Junior_bond 阅读(6) 评论(0) 推荐(0) 编辑
摘要:自己写的,冒泡排序,时间爆炸 class Solution: def moveZeroes(self, nums) -> None: """ Do not return anything, modify nums in-place instead. """ n=len(nums) for i in 阅读全文
posted @ 2024-03-28 12:52 Junior_bond 阅读(2) 评论(0) 推荐(0) 编辑
摘要:自己写的二分法: class Solution: def firstBadVersion(self, n: int) -> int: # 初始化左右指针进行二分查找 left = 1 right = n # 检查第一个版本是否是坏版本 if isBadVersion(1): return 1 # 检 阅读全文
posted @ 2024-03-27 18:44 Junior_bond 阅读(7) 评论(0) 推荐(0) 编辑
摘要:自己写的,调包排序: from typing import List class Solution: def missingNumber(self, nums: List[int]) -> int: # 将输入的列表排序 nums_new = sorted(nums) # 如果排序后的列表的第一个元 阅读全文
posted @ 2024-03-26 14:27 Junior_bond 阅读(4) 评论(0) 推荐(0) 编辑
摘要:丑数 就是只包含质因数 2、3 和 5 的正整数。换句话说 丑数=2*……*2*3*……*3*5*……*5 class Solution: def isUgly(self, n: int) -> bool: # 如果 n 小于等于 0,则不是丑数,返回 False if n <= 0: return 阅读全文
posted @ 2024-03-25 14:17 Junior_bond 阅读(6) 评论(0) 推荐(0) 编辑
摘要:三个简单函数: class Solution: def addDigits(self, num: int) -> int: # 如果数字已经是个位数,则直接返回 if num <= 9: return num # 持续执行直到数字变成个位数为止 while True: # 将数字转换为其各个数字构成 阅读全文
posted @ 2024-03-25 13:52 Junior_bond 阅读(2) 评论(0) 推荐(0) 编辑
摘要:迭代法-深度优先搜索(栈) class Solution: def binaryTreePaths(self, root: Optional[TreeNode]) -> List[str]: if not root: return [] # 如果根节点为空,直接返回空列表 stack = [(roo 阅读全文
posted @ 2024-03-23 18:41 Junior_bond 阅读(5) 评论(0) 推荐(0) 编辑
摘要:自己写的,有字典很简单: class Solution: def isAnagram(self, s: str, t: str) -> bool: # 创建两个空字典来存储字符计数 s_dic = dict() t_dic = dict() # 遍历字符串s,计算每个字符出现的次数并存储在s_dic 阅读全文
posted @ 2024-03-23 17:52 Junior_bond 阅读(3) 评论(0) 推荐(0) 编辑
摘要:毫无创意的一版: # 定义一个类 Solution class Solution: # 定义一个方法 isPalindrome,用于检查链表是否为回文 def isPalindrome(self, head: Optional[ListNode]) -> bool: # 如果链表为空,则它是一个回文 阅读全文
posted @ 2024-03-21 13:52 Junior_bond 阅读(3) 评论(0) 推荐(0) 编辑
摘要:自己写的: class MyQueue: def __init__(self): self.li=list() def push(self, x: int) -> None: self.li.append(x) def pop(self) -> int: return self.li.pop(0) 阅读全文
posted @ 2024-03-20 09:33 Junior_bond 阅读(2) 评论(0) 推荐(0) 编辑
摘要:递归写法: class Solution: def isPowerOfTwo(self, n: int) -> bool: # 如果 n 等于 1,则直接返回 True if n == 1: return True # 如果 n 等于 0,则直接返回 False if n == 0: return 阅读全文
posted @ 2024-03-19 10:22 Junior_bond 阅读(5) 评论(0) 推荐(0) 编辑
摘要:自己写的: class Solution: def summaryRanges(self, nums): my_li = [] # 创建一个空列表用于存储结果 if not nums: # 如果输入列表为空 return my_li # 返回空列表 if len(nums) == 1: # 如果输入 阅读全文
posted @ 2024-03-18 10:10 Junior_bond 阅读(3) 评论(0) 推荐(0) 编辑
摘要:自己写的: class Solution: def invertTree(self, root: Optional[TreeNode]) -> Optional[TreeNode]: # 创建一个新的 TreeNode 以存储反转后的树 newroot = TreeNode() # 如果输入的根节点 阅读全文
posted @ 2024-03-16 16:56 Junior_bond 阅读(3) 评论(0) 推荐(0) 编辑
摘要:利用内置的list class MyStack: def __init__(self): # 初始化一个空列表用于存储栈的元素 self.li = list() def push(self, x: int) -> None: # 向栈中压入元素 x self.li.append(x) def pop 阅读全文
posted @ 2024-03-15 13:29 Junior_bond 阅读(2) 评论(0) 推荐(0) 编辑
摘要:自己写的,使用广度优先BFS,迭代: class Solution: def countNodes(self, root: Optional[TreeNode]) -> int: # 如果根节点为空,则树中节点数为 0 if not root: return 0 # 初始化队列,并将根节点放入队列中 阅读全文
posted @ 2024-03-14 18:16 Junior_bond 阅读(4) 评论(0) 推荐(0) 编辑
摘要:自己写的: from typing import List class Solution: def containsNearbyDuplicate(self, nums: List[int], k: int) -> bool: # 创建一个空字典,用于存储数字及其最近出现的索引 mydict = { 阅读全文
posted @ 2024-03-13 10:07 Junior_bond 阅读(1) 评论(0) 推荐(0) 编辑
摘要:暴力解法 秒杀 class Solution: def containsDuplicate(self, nums: List[int]) -> bool: # 使用 set 将列表转换为集合,去除重复元素 unique_set = set(nums) # 如果集合的长度和原始列表的长度相等,说明没有 阅读全文
posted @ 2024-03-12 21:38 Junior_bond 阅读(1) 评论(0) 推荐(0) 编辑
摘要:自己写的,遍历一遍链表,再反向生成一个新链表 class Solution: def reverseList(self, head: Optional[ListNode]) -> Optional[ListNode]: # 检查链表是否为空 if not head: return None # 初始 阅读全文
posted @ 2024-03-11 10:16 Junior_bond 阅读(3) 评论(0) 推荐(0) 编辑
摘要:自己写的: class Solution: def isIsomorphic(self, s: str, t: str) -> bool: # 使用 match 函数分别检查 s 到 t 和 t 到 s 的映射关系 res_a = self.match(s, t) res_b = self.matc 阅读全文
posted @ 2024-03-09 21:47 Junior_bond 阅读(6) 评论(0) 推荐(0) 编辑
摘要:自己写的: # Definition for singly-linked list. # class ListNode: # def __init__(self, val=0, next=None): # self.val = val # self.next = next class Solutio 阅读全文
posted @ 2024-03-08 22:38 Junior_bond 阅读(3) 评论(0) 推荐(0) 编辑
摘要:自己写的: class Solution: def isHappy(self, n: int) -> bool: n_temp = n # 用n_temp保存当前的数字,以便迭代过程中使用 count = 0 # 用于计数,避免无限循环,设定最多迭代10次 while count < 10: # 最 阅读全文
posted @ 2024-03-07 15:36 Junior_bond 阅读(6) 评论(0) 推荐(0) 编辑
摘要:自己写的 class Solution: def hammingWeight(self, n: int) -> int: # 将整数 n 转换为二进制字符串,去除前缀 '0b' n_str = bin(n)[2:] # 用于存储 '1' 的列表 res_li = [] # 遍历二进制字符串的每一位 阅读全文
posted @ 2024-03-06 11:31 Junior_bond 阅读(2) 评论(0) 推荐(0) 编辑
摘要:使用bin函数 class Solution: def reverseBits(self, n: int) -> int: # 将整数 n 转换为二进制字符串,并用 左0 填充至32位 binary_str = bin(n)[2:].zfill(32) # 反转二进制字符串 reversed_str 阅读全文
posted @ 2024-03-06 10:49 Junior_bond 阅读(2) 评论(0) 推荐(0) 编辑
摘要:自己写的: class Solution: def titleToNumber(self, columnTitle: str) -> int: # 创建一个字典,将字母映射到它们在字母表中的位置 mydict = dict() for i in range(1, 27): mydict[chr(or 阅读全文
posted @ 2024-03-05 09:55 Junior_bond 阅读(3) 评论(0) 推荐(0) 编辑
摘要:自己写的: class Solution: def majorityElement(self, nums): # 创建一个空字典用于存储数字和其出现次数 mydict = dict() # 遍历输入的列表 nums for i in nums: # 如果数字 i 不在字典中,将其添加到字典,并初始化 阅读全文
posted @ 2024-03-04 10:09 Junior_bond 阅读(2) 评论(0) 推荐(0) 编辑
摘要:10进制转换成26进制 A对应0:(正常的情况) class Solution: def convertToTitle(self, columnNumber: int) -> str: mydict = {} # 创建字典,映射数字到字母 for i in range(1, 27): mydict[ 阅读全文
posted @ 2024-03-03 18:20 Junior_bond 阅读(13) 评论(0) 推荐(0) 编辑
摘要:会超出时间限制: class Solution: def getIntersectionNode(self, headA: ListNode, headB: ListNode) -> Optional[ListNode]: cur_b=headB cur_a=headA while cur_b!=N 阅读全文
posted @ 2024-03-02 20:04 Junior_bond 阅读(3) 评论(0) 推荐(0) 编辑
摘要:递归: class Solution: def __init__(self): # 初始化一个实例变量 res 用于存储遍历结果 self.res = list() def postorderTraversal(self, root: Optional[TreeNode]) -> List[int] 阅读全文
posted @ 2024-03-01 16:46 Junior_bond 阅读(3) 评论(0) 推荐(0) 编辑

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