自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(15)
  • 收藏
  • 关注

原创 【Python】【LeetCode.145】二叉树的后序遍历

给定一个二叉树,返回它的 后序 遍历。示例:输入: [1,null,2,3]12/3输出: [3,2,1]首先当然是喜闻乐见的递归# class TreeNode: # def __init__(self, val=0, left=None, right=None): # self.val = val # self.left = left # self.right = rightclass Solution: def postorderTraversal(self

2021-08-22 22:58:46 148

原创 【Python】【LeetCode.144】 二叉树的前序遍历

给你二叉树的根节点 root ,返回它节点值的 前序 遍历。示例 1:输入:root = [1,null,2,3]输出:[1,2,3]示例 2:输入:root = []输出:[]示例 3:输入:root = [1]输出:[1]示例 4:输入:root = [1,2]输出:[1,2]示例 5:输入:root = [1,null,2]输出:[1,2]提示:树中节点数目在范围 [0, 100] 内-100 <= Node.val <= 100首先想到的当然是

2021-08-22 22:22:28 133

原创 【Python】【LeetCode.94】 二叉树的中序遍历

给定一个二叉树的根节点 root ,返回它的 中序 遍历。示例 1:输入:root = [1,null,2,3]输出:[1,3,2]示例 2:输入:root = []输出:[]示例 3:输入:root = [1]输出:[1]示例 4:输入:root = [1,2]输出:[2,1]示例 5:输入:root = [1,null,2]输出:[1,2]提示:树中节点数目在范围 [0, 100] 内-100 <= Node.val <= 100简单而又粗暴的递归

2021-08-22 21:05:12 129

原创 【Python】【剑指Offer.50】第一个只出现一次的字符

在字符串 s 中找出第一个只出现一次的字符。如果没有,返回一个单空格。 s 只包含小写字母。示例:s = “abaccdeff”返回 “b”s = “”返回 " "限制:0 <= s 的长度 <= 50000我比较笨,第一次想到的是class Solution: def firstUniqChar(self, s: str) -> str: dic = {c: s.count(c) for c in s} for k, v in d

2021-08-17 23:43:46 296

原创 【Python】【LeetCode.202】快乐数

编写一个算法来判断一个数 n 是不是快乐数。「快乐数」定义为:对于一个正整数,每一次将该数替换为它每个位置上的数字的平方和。然后重复这个过程直到这个数变为 1,也可能是 无限循环 但始终变不到 1。如果 可以变为 1,那么这个数就是快乐数。如果 n 是快乐数就返回 true ;不是,则返回 false 。示例 1:输入:19输出:true解释:12 + 92 = 8282 + 22 = 6862 + 82 = 10012 + 02 + 02 = 1示例 2:输入:n = 2

2021-08-16 23:34:14 144

原创 【Python】【LeetCode.387】字符串中的第一个唯一字符

给定一个字符串,找到它的第一个不重复的字符,并返回它的索引。如果不存在,则返回 -1。示例:s = “leetcode”返回 0s = “loveleetcode”返回 2提示:你可以假定该字符串只包含小写字母。class Solution: def firstUniqChar(self, s: str) -> int: dic = {c: s.count(c) for c in set(s)} for i, k in enumerate(s):

2021-08-16 21:31:03 71

原创 【Python】【剑指Offer.03】数组中重复的数字

找出数组中重复的数字。在一个长度为 n 的数组 nums 里的所有数字都在 0~n-1 的范围内。数组中某些数字是重复的,但不知道有几个数字重复了,也不知道每个数字重复了几次。请找出数组中任意一个重复的数字。示例 1:输入:[2, 3, 1, 0, 2, 5, 3]输出:2 或 3限制:2 <= n <= 100000class Solution: def findRepeatNumber(self, nums: List[int]) -> int: tm

2021-08-15 21:34:28 66

原创 【Python】【LeetCode.122】买卖股票的最佳时机 II

给定一个数组 prices ,其中 prices[i] 是一支给定股票第 i 天的价格。设计一个算法来计算你所能获取的最大利润。你可以尽可能地完成更多的交易(多次买卖一支股票)。注意:你不能同时参与多笔交易(你必须在再次购买前出售掉之前的股票)。示例 1:输入: prices = [7,1,5,3,6,4]输出: 7解释: 在第 2 天(股票价格 = 1)的时候买入,在第 3 天(股票价格 = 5)的时候卖出, 这笔交易所能获得利润 = 5-1 = 4 。随后,在第 4 天(股票价格 = 3)的

2021-08-15 16:50:26 134

原创 【Python】【LeetCode.121】买卖股票的最佳时机

给定一个数组 prices ,它的第 i 个元素 prices[i] 表示一支给定股票第 i 天的价格。你只能选择 某一天 买入这只股票,并选择在 未来的某一个不同的日子 卖出该股票。设计一个算法来计算你所能获取的最大利润。返回你可以从这笔交易中获取的最大利润。如果你不能获取任何利润,返回 0 。示例 1:输入:[7,1,5,3,6,4]输出:5解释:在第 2 天(股票价格 = 1)的时候买入,在第 5 天(股票价格 = 6)的时候卖出,最大利润 = 6-1 = 5 。注意利润不能是 7-1 =

2021-08-15 16:32:38 85

原创 【Python】【LeetCode.167】两数之和 II - 输入有序数组

给定一个已按照 升序排列 的整数数组 numbers ,请你从数组中找出两个数满足相加之和等于目标数 target 。函数应该以长度为 2 的整数数组的形式返回这两个数的下标值。numbers 的下标 从 1 开始计数 ,所以答案数组应当满足 1 <= answer[0] < answer[1] <= numbers.length 。你可以假设每个输入只对应唯一的答案,而且你不可以重复使用相同的元素。示例 1:输入:numbers = [2,7,11,15], target =

2021-08-15 10:52:58 106

原创 【python】【剑指 Offer】 【二分查找】53 - I. 在排序数组中查找数字 I

统计一个数字在排序数组中出现的次数。示例 1:输入: nums = [5,7,7,8,8,10], target = 8输出: 2示例 2:输入: nums = [5,7,7,8,8,10], target = 6输出: 0提示:0 <= nums.length <= 105-109 <= nums[i] <= 109nums 是一个非递减数组-109 <= target <= 109解法1:暴力法遍历数组,出现一次计数一次class Solut

2021-08-14 20:11:13 88

原创 【Python】【LeetCode.283】移动零---谈谈for与while在可变数据类型中使用的差异

给定一个数组 nums,编写一个函数将所有 0 移动到数组的末尾,同时保持非零元素的相对顺序。示例:输入: [0,1,0,3,12]输出: [1,3,12,0,0]说明:必须在原数组上操作,不能拷贝额外的数组。尽量减少操作次数。## @lc app=leetcode.cn id=283 lang=python3## [283] 移动零## @lc code=startclass Solution: def moveZeroes(self, nums) -> None

2021-08-08 12:11:21 46

原创 【Python】【LeetCode.53】最大子序和

给定一个整数数组 nums ,找到一个具有最大和的连续子数组(子数组最少包含一个元素),返回其最大和。示例 :输入:nums = [-2,1,-3,4,-1,2,1,-5,4] 输出:6 解释:连续子数组 [4,-1,2,1] 的和最大,为 6输入:nums = [1] 输出:1输入:nums = [0] 输出:0输入:nums = [-1] 输出:-1输入:nums = [-100000] 输出:-100000提示:1 <= nums.length <= 3 * 104

2021-08-01 22:54:49 66

原创 【Python】【LeetCode.15】三数之和

给你一个包含 n 个整数的数组 nums,判断 nums 中是否存在三个元素 a,b,c ,使得 a + b + c = 0 ?请你找出所有和为 0 且不重复的三元组。注意:答案中不可以包含重复的三元组。给你一个包含 n 个整数的数组 nums,判断 nums 中是否存在三个元素 a,b,c ,使得 a + b + c = 0 ?请你找出所有和为 0 且不重复的三元组。注意:答案中不可以包含重复的三元组。示例 :输入:nums = [-1,0,1,2,-1,-4] 输出:[[-1,-1,2],

2021-08-01 16:12:45 59

原创 python函数体里的if...else...与return语句

函数体在执行遇到return时,函数就会执行完毕并将结果返回。注意与if…else…的表达区别举个栗子:def move(n, a, b, c): if n == 1: print(a, '-->', c) return//n等于1的时候,执行到这了就结束了,往下部分无论如何也不执行 move(n-1, a, c, b) move(1, a, b, c) move(n-1, b, a, c) return换成if else的写法就是def move(n, a, b, c):

2020-06-07 21:01:27 14272 1

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除