自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 leetcode 1848

到目标元素的最小距离给你一个整数数组 nums (下标 从 0 开始 计数)以及两个整数 target 和 start ,请你找出一个下标 i ,满足 nums[i] == target 且 abs(i - start) 最小化 。注意:abs(x) 表示 x 的绝对值。返回 abs(i - start) 。题目数据保证 target 存在于 nums 中。class Solution { public int getMinDistance(int[] nums, int target,.

2021-05-08 23:52:10 215

原创 门牌制作与寻找2020

蓝桥杯省赛python试做1.很明显,2会出现在个位十位百位千位。2.需要遍历1-20203.%或许需要被用到1.大概率用到数组2.连续三个3.三种方式文件处理不怎么会(其他地方搞来的)4.边界条件要考虑,不能越过其行列with open('test.txt', mode='r', encoding='utf-8') as fp: for line in fp: line = list(line.strip()) data.append(li

2021-04-18 08:09:44 205

原创 双指针,二分法,哈希表,动态规划以及贪心的一些想法

双指针,二分法,哈希表,动态规划以及贪心的一些想法双指针双指针就是一个快指针加一个慢指针,当然重点是有两个指针。这题重点在只出现一次,重复即为==,那么可以一个指针在前一位如果他和后一位相等他就前进,不同他就暂停,让后一位跨步追上,并进行存储,直至结束。def removeDuplicates(self, nums: List[int]) -> int: if len(nums) == 0: return 0 i=0 for j in range(1,

2021-04-11 16:24:37 364

原创 BFS与DFS的一些想法

BFS与DFS的一些想法bfs一层层去找,找到就得到结果退出,找不到接着找限制条件1:if not now.left and not now.right:叶子节点 是指没有子节点的节点。可以得出一个大前提,我们至少要遍历到叶子节点,在此之前循环不会被终止。限制条件2:需要等于targetSum,那么 必定要设立一个变量与其对比。限制条件3:从根节点起步。限制条件4:需要相加,如果不用数组把每一次求的结果保存进去,那么每次相加完毕都应该进行一次对比。不过这里有队列,可以作为临时存储手段,使得他们在

2021-04-04 15:08:30 164

原创 批量打开关闭网址或程序

打开@echo offstart "QQ Music" "D:\QQMusic\QQMusic.exe explorer open="https://www.baidu.com/s?ie=UTF-8&wd=baidu"explorer open="https://blog.csdn.net/"关闭@echo offtaskkill /f /t /im QQMusic.exetaskkill /f /t /im msedge.exe用txt写,再重命名到bat即可...

2021-01-25 12:30:06 285

原创 LeetCode 628[Pytho]. 三个数的最大乘积 给定一个整型数组,在数组中找出由三个数组成的最大乘积,并输出这个乘积。

LeetCode 628. 三个数的最大乘积给定一个整型数组,在数组中找出由三个数组成的最大乘积,并输出这个乘积。示例 1:输入: [1,2,3]输出: 6示例 2:输入: [1,2,3,4]输出: 24Codedef maximumProduct(self, nums: List[int]) -> int: num=sorted(nums)#排序 return max(num[-1]*num[-2]*num[-3],num[0]*num[1]*num[-1])想

2021-01-20 19:45:44 149

原创 [Python]LeetCode 1078. Bigram 分词 给出第一个词 first 和第二个词 second,考虑在某些文本 text 中可能现的情况

LeetCode 1078. Bigram 分词给出第一个词 first 和第二个词 second,考虑在某些文本 text 中可能以 “first second third” 形式出现的情况,其中 second 紧随 first 出现,third 紧随 second 出现。对于每种这样的情况,将第三个词 “third” 添加到答案中,并返回答案。示例 1:输入:text = “alice is a good girl she is a good student”, first = “a”, sec

2021-01-12 23:53:17 210

原创 LeetCode 605[Python]. 种花问题 假设你有一个很长的花坛,一部分地块种植了花,另一部分却没有。可是,花卉不能种植在相邻的地块上,它们会争夺水源,两者都会死去。

LeetCode 605. 种花问题假设你有一个很长的花坛,一部分地块种植了花,另一部分却没有。可是,花卉不能种植在相邻的地块上,它们会争夺水源,两者都会死去。给定一个花坛(表示为一个数组包含0和1,其中0表示没种植花,1表示种植了花),和一个数 n 。能否在不打破种植规则的情况下种入 n 朵花?能则返回True,不能则返回False。示例 1:输入: flowerbed = [1,0,0,0,1], n = 1输出: True示例 2:输入: flowerbed = [1,0,0,0,1],

2021-01-01 12:07:21 843

原创 LeetCode 204[Python]. 计数质数 统计所有小于非负整数 n 的质数的数量。 示例 1: 输入:n = 10 输出:4

LeetCode 204. 计数质数统计所有小于非负整数 n 的质数的数量。示例 1:输入:n = 10输出:4解释:小于 10 的质数一共有 4 个, 它们是 2, 3, 5, 7 。示例 2:输入:n = 0输出:0示例 3:输入:n = 1输出:0Codedef countPrimes(self, n: int) -> int: isprime = [True] * n#全部设为True res = 0 for i in range(2,n,1)

2020-12-31 20:01:00 753

原创 LeetCode 1103[Python]. 分糖果 II 排排坐,分糖果。 我们买了一些糖果 candies,打算把它们分给排好队的 n = num_people 个小朋友。

LeetCode 1103. 分糖果 II排排坐,分糖果。我们买了一些糖果 candies,打算把它们分给排好队的 n = num_people 个小朋友。给第一个小朋友 1 颗糖果,第二个小朋友 2 颗,依此类推,直到给最后一个小朋友 n 颗糖果。然后,我们再回到队伍的起点,给第一个小朋友 n + 1 颗糖果,第二个小朋友 n + 2 颗,依此类推,直到给最后一个小朋友 2 * n 颗糖果。重复上述过程(每次都比上一次多给出一颗糖果,当到达队伍终点后再次从队伍起点开始),直到我们分完所有的糖果。

2020-12-30 18:01:10 301

原创 LeetCode 392[Python]. 判断子序列 给定字符串 s 和 t ,判断 s 是否为 t 的子序列。 字符串的一个子序列是原始字符串删除一些

LeetCode 392. 判断子序列给定字符串 s 和 t ,判断 s 是否为 t 的子序列。字符串的一个子序列是原始字符串删除一些(也可以不删除)字符而不改变剩余字符相对位置形成的新字符串。(例如,"ace"是"abcde"的一个子序列,而"aec"不是)。进阶:如果有大量输入的 S,称作 S1, S2, … , Sk 其中 k >= 10亿,你需要依次检查它们是否为 T 的子序列。在这种情况下,你会怎样改变代码?致谢:特别感谢 @pbrother 添加此问题并且创建所有测试用例。示

2020-12-29 11:22:28 1264

原创 LeetCode 242[Python]. 有效的字母异位词 给定两个字符串 s 和 t ,编写一个函数来判断 t 是否是 s 的字母异位词。

LeetCode 242. 有效的字母异位词给定两个字符串 s 和 t ,编写一个函数来判断 t 是否是 s 的字母异位词。示例 1:输入: s = “anagram”, t = “nagaram”输出: true示例 2:输入: s = “rat”, t = “car”输出: false说明:你可以假设字符串只包含小写字母。Codedef isAnagram(self, s: str, t: str) -> bool: ss=sorted(s) tt=sorte

2020-12-28 11:15:45 513

原创 LeetCode 205[Python]. 同构字符串 给定两个字符串 s 和 t,判断它们是否是同构的。 如果 s 中的字符可以被替换得到 t ,那么这两个字符串是同构的。

LeetCode 205. 同构字符串给定两个字符串 s 和 t,判断它们是否是同构的。如果 s 中的字符可以被替换得到 t ,那么这两个字符串是同构的。所有出现的字符都必须用另一个字符替换,同时保留字符的顺序。两个字符不能映射到同一个字符上,但字符可以映射自己本身。示例 1:输入: s = “egg”, t = “add”输出: true示例 2:输入: s = “foo”, t = “bar”输出: falseCodedef isIsomorphic(self, s: str, t

2020-12-27 10:06:37 723

原创 LeetCode 69[Python]. x 的平方根 实现 int sqrt(int x) 函数。 计算并返回 x 的平方根,其中 x 是非负整数。

LeetCode 69. x 的平方根实现 int sqrt(int x) 函数。计算并返回 x 的平方根,其中 x 是非负整数。由于返回类型是整数,结果只保留整数的部分,小数部分将被舍去。示例 1:输入: 4输出: 2示例 2:输入: 8输出: 2说明: 8 的平方根是 2.82842…,由于返回类型是整数,小数部分将被舍去。Codedef mySqrt(self, x: int) -> int: l,r,res=0,x,-1 while l<=r:

2020-12-26 19:46:50 959

原创 LeetCode 455[Python]. 分发饼干 假设你是一位很棒的家长,想要给你的孩子们一些小饼干。但是,每个孩子最多只能给一块饼干。

LeetCode 455. 分发饼干假设你是一位很棒的家长,想要给你的孩子们一些小饼干。但是,每个孩子最多只能给一块饼干。对每个孩子 i,都有一个胃口值 g[i],这是能让孩子们满足胃口的饼干的最小尺寸;并且每块饼干 j,都有一个尺寸 s[j] 。如果 s[j] >= g[i],我们可以将这个饼干 j 分配给孩子 i ,这个孩子会得到满足。你的目标是尽可能满足越多数量的孩子,并输出这个最大数值。示例 1:输入: g = [1,2,3], s = [1,1]输出: 1解释:你有三个孩子和两

2020-12-25 10:46:37 3145

原创 LeetCode 28[Python]. 实现 strStr() 实现 strStr() 函数.给定一个 haystack 字符串和一个 needle 字符串,在 haystack 字符串中找出

LeetCode 28. 实现 strStr()实现 strStr() 函数。给定一个 haystack 字符串和一个 needle 字符串,在 haystack 字符串中找出 needle 字符串出现的第一个位置 (从0开始)。如果不存在,则返回 -1。示例 1:输入: haystack = “hello”, needle = “ll”输出: 2示例 2:输入: haystack = “aaaaa”, needle = “bba”输出: -1Codedef strStr(self,

2020-12-24 14:55:21 428

原创 LeetCode 387[Python]. 字符串中的第一个唯一字符 给定一个字符串,找到它的第一个不重复的字符,并返回它的索引。如果不存在,则返回 -1。

LeetCode 387. 字符串中的第一个唯一字符给定一个字符串,找到它的第一个不重复的字符,并返回它的索引。如果不存在,则返回 -1。示例:s = “leetcode”返回 0s = “loveleetcode”返回 2Codedef firstUniqChar(self, s: str) -> int: fre=collections.Counter(s)#计算频率 for i,char in enumerate(s):#找到它的第一个不重复的字符

2020-12-23 12:51:47 906

原创 LeetCode 112[Python]. 路径总和 给定一个二叉树和一个目标和,判断该树中是否存在根节点到叶子节点的路径,这条路径上所有节点值相加等于目标和。

LeetCode 112. 路径总和给定一个二叉树和一个目标和,判断该树中是否存在根节点到叶子节点的路径,这条路径上所有节点值相加等于目标和。说明: 叶子节点是指没有子节点的节点。示例:给定如下二叉树,以及目标和 sum = 22, 5 / \ 4 8 / / \ 11 13 4 / \ \ 7 2 1返回 true, 因为存在目标和为 22 的根节点到叶子节

2020-12-22 11:37:22 611

原创 LeetCode 746[Python]. 使用最小花费爬楼梯 数组的每个索引作为一个阶梯,第 i个阶梯对应着一个非负数的体力花费值 cost[i](索引从0开始)。

LeetCode 746. 使用最小花费爬楼梯数组的每个索引作为一个阶梯,第 i个阶梯对应着一个非负数的体力花费值 costi。每当你爬上一个阶梯你都要花费对应的体力花费值,然后你可以选择继续爬一个阶梯或者爬两个阶梯。您需要找到达到楼层顶部的最低花费。在开始时,你可以选择从索引为 0 或 1 的元素作为初始阶梯。示例 1:输入: cost = [10, 15, 20]输出: 15解释: 最低花费是从cost[1]开始,然后走两步即可到阶梯顶,一共花费15。示例 2:输入: cost = [

2020-12-21 12:23:48 398

原创 LeetCode 316/1081[Python]. 去除重复字母 给你一个字符串 s ,请你去除字符串中重复的字母,使得每个字母只出现一次。

LeetCode 316/1081. 去除重复字母给你一个字符串 s ,请你去除字符串中重复的字母,使得每个字母只出现一次。需保证 返回结果的字典序最小(要求不能打乱其他字符的相对位置)。注意:该题与 1081 https://leetcode-cn.com/problems/smallest-subsequence-of-distinct-characters 相同示例 1:输入:s = “bcabc”输出:“abc”示例 2:输入:s = “cbacdcbc”输出:“acdb”Code

2020-12-20 22:54:15 2861 1

原创 LeetCode 27[Python]. 移除元素 给你一个数组 nums 和一个值 val

LeetCode 27. 移除元素给你一个数组 nums 和一个值 val,你需要 原地 移除所有数值等于 val 的元素,并返回移除后数组的新长度。不要使用额外的数组空间,你必须仅使用 O(1) 额外空间并 原地 修改输入数组。元素的顺序可以改变。你不需要考虑数组中超出新长度后面的元素。示例 1:给定 nums = [3,2,2,3], val = 3,函数应该返回新的长度 2, 并且 nums 中的前两个元素均为 2。你不需要考虑数组中超出新长度后面的元素。Codedef remove

2020-12-19 17:27:48 585 1

原创 [Python]LeetCode 1688. 比赛中的配对次数 LeetCode 1689. 十-二进制数的最少数目LeetCode 1657. 确定两个字符串是否接近

LeetCode 1688. 比赛中的配对次数给你一个整数 n ,表示比赛中的队伍数。比赛遵循一种独特的赛制:如果当前队伍数是 偶数 ,那么每支队伍都会与另一支队伍配对。总共进行 n / 2 场比赛,且产生 n / 2 支队伍进入下一轮。如果当前队伍数为 奇数 ,那么将会随机轮空并晋级一支队伍,其余的队伍配对。总共进行 (n - 1) / 2 场比赛,且产生 (n - 1) / 2 + 1 支队伍进入下一轮。返回在比赛中进行的配对次数,直到决出获胜队伍为止。示例 1:输入:n = 7输出:6

2020-12-18 17:21:50 195

原创 LeetCode 26[Python]. 删除排序数组中的重复项 给定一个排序数组,你需要在 原地 删除重复出现的元素,使得每个元素只出现一次,返回移除后数组的新长度。

LeetCode 26. 删除排序数组中的重复项给定一个排序数组,你需要在 原地 删除重复出现的元素,使得每个元素只出现一次,返回移除后数组的新长度。不要使用额外的数组空间,你必须在 原地 修改输入数组 并在使用 O(1) 额外空间的条件下完成。示例 1:给定数组 nums = [1,1,2],函数应该返回新的长度 2, 并且原数组 nums 的前两个元素被修改为 1, 2。你不需要考虑数组中超出新长度后面的元素。Codedef removeDuplicates(self, nums: Li

2020-12-17 22:32:48 641

原创 LeetCode 290[Python]. 单词规律 给定一种规律 pattern 和一个字符串 str ,判断 str 是否遵循相同的规律。

LeetCode 290. 单词规律给定一种规律 pattern 和一个字符串 str ,判断 str 是否遵循相同的规律。这里的 遵循 指完全匹配,例如, pattern 里的每个字母和字符串 str 中的每个非空单词之间存在着双向连接(映射)的对应规律。示例1:输入: pattern = “abba”, str = “dog cat cat dog”输出: trueCodedef wordPattern(self, pattern: str, s: str) -> bool:

2020-12-16 23:51:17 1087 1

原创 LeetCode 111[Python]. 二叉树的最小深度 给定一个二叉树,找出其最小深度。 最小深度是从根节点到最近叶子节点的最短路径上的节点数量。

LeetCode 111. 二叉树的最小深度给定一个二叉树,找出其最小深度。最小深度是从根节点到最近叶子节点的最短路径上的节点数量。说明:叶子节点是指没有子节点的节点。Codedef minDepth(self, root: TreeNode) -> int: if root == None: return 0 q=[root]#将起点加入 res=1 while q != None: n=len(q)#n也会更新

2020-12-15 13:25:22 570

原创 LeetCode 99[Python]. 恢复二叉搜索树 给你二叉搜索树的根节点 root ,该树中的两个节点被错误地交换。请在不改变其结构的情况下,恢复这棵树。

LeetCode 99. 恢复二叉搜索树给你二叉搜索树的根节点 root ,该树中的两个节点被错误地交换。请在不改变其结构的情况下,恢复这棵树。进阶:使用 O(n) 空间复杂度的解法很容易实现。你能想出一个只使用常数空间的解决方案吗?示例 1:输入:root = [1,3,null,null,2]输出:[3,1,null,null,2]解释:3 不能是 1 左孩子,因为 3 > 1 。交换 1 和 3 使二叉搜索树有效。Codedef recoverTree(self, root: T

2020-12-14 17:30:33 280

原创 LeetCode 105[Python]. 从前序与中序遍历序列构造二叉树 根据一棵树的前序遍历与中序遍历构造二叉树。 注意: 你可以假设树中没有重复的元素。

LeetCode 105. 从前序与中序遍历序列构造二叉树根据一棵树的前序遍历与中序遍历构造二叉树。注意:你可以假设树中没有重复的元素。例如,给出前序遍历 preorder = [3,9,20,15,7]中序遍历 inorder = [9,3,15,20,7]返回如下的二叉树:3/ 9 20/ 15 7# Definition for a binary tree node.# class TreeNode:# def __init__(self, x):#

2020-12-13 17:09:47 212

原创 LeetCode 124[Python]. 二叉树中的最大路径和 给定一个非空二叉树,返回其最大路径和。该路径至少包含一个节点,且不一定经过根节点。

LeetCode 124. 二叉树中的最大路径和给定一个非空二叉树,返回其最大路径和。本题中,路径被定义为一条从树中任意节点出发,沿父节点-子节点连接,达到任意节点的序列。该路径至少包含一个节点,且不一定经过根节点。示例 1:输入:[1,2,3] 1 / \ 2 3输出:6# Definition for a binary tree node.# class TreeNode:# def __init__(self, val=0, left=None, right=

2020-12-12 17:48:46 282

原创 LeetCode 452[Python]. 用最少数量的箭引爆气球 在二维空间中有许多球形的气球。对于每个气球,提供的输入是水平方向上,气球直径的开始和结束坐标。

LeetCode 452. 用最少数量的箭引爆气球在二维空间中有许多球形的气球。对于每个气球,提供的输入是水平方向上,气球直径的开始和结束坐标。由于它是水平的,所以纵坐标并不重要,因此只要知道开始和结束的横坐标就足够了。开始坐标总是小于结束坐标。一支弓箭可以沿着 x 轴从不同点完全垂直地射出。在坐标 x 处射出一支箭,若有一个气球的直径的开始和结束坐标为 xstart,xend, 且满足 xstart ≤ x ≤ xend,则该气球会被引爆。可以射出的弓箭的数量没有限制。 弓箭一旦被射出之后,可以无限

2020-12-11 14:00:42 344

原创 LeetCode 860[Python]. 柠檬水找零 在柠檬水摊上,每一杯柠檬水的售价为 5 美元。 顾客排队购买你的产品,(按账单 bills 支付的顺序)一次购买一杯。

LeetCode 860. 柠檬水找零在柠檬水摊上,每一杯柠檬水的售价为 5 美元。顾客排队购买你的产品,(按账单 bills 支付的顺序)一次购买一杯。每位顾客只买一杯柠檬水,然后向你付 5 美元、10 美元或 20 美元。你必须给每个顾客正确找零,也就是说净交易是每位顾客向你支付 5 美元。注意,一开始你手头没有任何零钱。如果你能给每位顾客正确找零,返回 true ,否则返回 false 。Codedef lemonadeChange(self, bills: List[int]) -&g

2020-12-10 14:57:05 1210 2

原创 LeetCode 283. 移动零[Python] 给定一个数组 nums,编写一个函数将所有 0 移动到数组的末尾,同时保持非零元素的相对顺序。

LeetCode 283. 移动零给定一个数组 nums,编写一个函数将所有 0 移动到数组的末尾,同时保持非零元素的相对顺序。示例:输入: [0,1,0,3,12]输出: [1,3,12,0,0]Codeimport queue#库class Solution: def moveZeroes(self, nums: List[int]) -> None: n=len(nums) m=0 q=queue.Queue(n)

2020-12-09 11:22:36 1120

原创 LeetCode [Python]1. 两数之和给定一个整数数组 nums 和一个目标值 target,请你在该数组中找出和为目标值的那 两个 整数,并返回他们的数组下标。

LeetCode 1. 两数之和给定一个整数数组 nums 和一个目标值 target,请你在该数组中找出和为目标值的那 两个 整数,并返回他们的数组下标。你可以假设每种输入只会对应一个答案。但是,数组中同一个元素不能使用两遍。示例:给定 nums = [2, 7, 11, 15], target = 9因为 nums[0] + nums[1] = 2 + 7 = 9所以返回 [0, 1]Codedef twoSum(self, nums: List[int], target: int) -

2020-12-08 13:30:17 826 1

原创 LeetCode 141. [Python]环形链表 给定一个链表,判断链表中是否有环。 如果链表中有某个节点,可以通过连续跟踪 next 指针再次到达,则链表中存在环。

LeetCode 141. 环形链表给定一个链表,判断链表中是否有环。如果链表中有某个节点,可以通过连续跟踪 next 指针再次到达,则链表中存在环。 为了表示给定链表中的环,我们使用整数 pos 来表示链表尾连接到链表中的位置(索引从 0 开始)。 如果 pos 是 -1,则在该链表中没有环。注意:pos 不作为参数进行传递,仅仅是为了标识链表的实际情况。如果链表中存在环,则返回 true 。 否则,返回 false 。# class ListNode:# def __init__(se

2020-12-07 17:16:50 305

原创 LeetCode 剑指 Offer 40.[Python] 最小的k个数 输入整数数组 arr ,找出其中最小的 k 个数。

##LeetCode 剑指 Offer 40. 最小的k个数输入整数数组 arr ,找出其中最小的 k 个数。例如,输入4、5、1、6、2、7、3、8这8个数字,则最小的4个数字是1、2、3、4。示例 1:输入:arr = [3,2,1], k = 2输出:[1,2] 或者 [2,1]示例 2:输入:arr = [0,1,2,1], k = 1输出:[0]Codedef getLeastNumbers(self, arr: List[int], k: int) -> List[int

2020-12-06 13:31:50 448

原创 LeetCode 733.[Python] 图像渲染 有一幅以二维整数数组表示的图画,每一个整数表示该图画的像素值大小,数值在 0 到 65535 之间。新

733. 图像渲染有一幅以二维整数数组表示的图画,每一个整数表示该图画的像素值大小,数值在 0 到 65535 之间。 给你一个坐标 (sr, sc) 表示图像渲染开始的像素值(行 ,列)和一个新的颜色值 newColor,让你重新上色这幅图像。为了完成上色工作,从初始坐标开始,记录初始坐标的上下左右四个方向上像素值与初始坐标相同的相连像素点,接着再记录这四个方向上符合条件的像素点与他们对应四个方向上像素值与初始坐标相同的相连像素点,……,重复该过程。将所有有记录的像素点的颜色值改为新的颜色值。最后返

2020-12-05 15:03:37 535

原创 LeetCode 275. H 指数 II 给定一位研究者论文被引用次数的数组(被引用次数是非负整数),数组已经按照 升序排列 。

LeetCode 275. H 指数 II给定一位研究者论文被引用次数的数组(被引用次数是非负整数),数组已经按照 升序排列 。编写一个方法,计算出研究者的 h 指数。h 指数的定义: “h 代表“高引用次数”(high citations),一名科研人员的 h 指数是指他(她)的 (N 篇论文中)总共有 h 篇论文分别被引用了至少 h 次。(其余的 N - h 篇论文每篇被引用次数不多于 h 次。)"Codedef hIndex(self, citations: List[int]) ->

2020-12-04 20:01:57 382

原创 LeetCode 690[Python]. 员工的重要性 给定一个保存员工信息的数据结构,它包含了员工唯一的id,重要度 和 直系下属的id。

LeetCode 690. 员工的重要性给定一个保存员工信息的数据结构,它包含了员工唯一的id,重要度 和 直系下属的id。比如,员工1是员工2的领导,员工2是员工3的领导。他们相应的重要度为15, 10, 5。那么员工1的数据结构是[1, 15, [2]],员工2的数据结构是[2, 10, [3]],员工3的数据结构是[3, 5, []]。注意虽然员工3也是员工1的一个下属,但是由于并不是直系下属,因此没有体现在员工1的数据结构中。现在输入一个公司的所有员工信息,以及单个员工id,返回这个员工和他所

2020-12-03 14:58:49 424

原创 Leetcode 200.[Python] 岛屿数量 给你一个由 ‘1‘(陆地)和 ‘0‘(水)组成的的二维网格,请你计算网格中岛屿的数量。

Leetcode 200. 岛屿数量给你一个由 ‘1’(陆地)和 ‘0’(水)组成的的二维网格,请你计算网格中岛屿的数量。岛屿总是被水包围,并且每座岛屿只能由水平方向和/或竖直方向上相邻的陆地连接形成。此外,你可以假设该网格的四条边均被水包围。Codedef numIslands(self, grid: List[List[str]]) -> int: if grid is None or len(grid) == 0: return 0 island=0

2020-12-02 20:11:02 3776

原创 [Python]NYOJ 1058 部分和

NYOJ 1058 部分和给定整数a1、a2、…an,判断是否可以从中选出若干数,使它们的和恰好为K。输入首先,n和k,n表示数的个数,k表示数的和。接着一行n个数。(1<=n<=20,保证不超int范围)输出如果和恰好可以为k,输出“YES”,并按输入顺序依次输出是由哪几个数的和组成,否则“NO想法1.DFS 经常使用递归Codedef dfs(i,sum): if i==n: return sum==k if (dfs(i+1,sum)):#不加a[i]

2020-12-01 19:10:23 225

原创 LeetCode 102[Python]. 二叉树的层序遍历 给你一个二叉树,请你返回其按 层序遍历 得到的节点值。 (即逐层地,从左到右访问所有节点)。

LectCode 102. 二叉树的层序遍历给你一个二叉树,请你返回其按 层序遍历 得到的节点值。 (即逐层地,从左到右访问所有节点)。Codedef levelOrder(self, root: TreeNode) -> List[List[int]]: if root is None: return [] from collections import deque #BFS layer = deque() layer.

2020-11-30 20:07:52 743

空空如也

空空如也

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

TA关注的人

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