自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 力扣 leetcode 1046. 最后一块石头的重量 (python)

要求:有一堆石头,每块石头的重量都是正整数。每一回合,从中选出两块 最重的 石头,然后将它们一起粉碎。假设石头的重量分别为 x 和 y,且 x <= y。那么粉碎的可能结果如下:如果 x == y,那么两块石头都会被完全粉碎;如果 x != y,那么重量为 x 的石头将会完全粉碎,而重量为 y 的石头新重量为 y-x。最后,最多只会剩下一块石头。返回此石头的重量。如果没有石头剩下,就返回 0。示例:输入:[2,7,4,1,8,1]输出:1解释:先选出 7 和 8,得到 1,所以数

2020-12-30 23:18:32 273

原创 leetcode 205. 同构字符串 index与哈希(hash)(python)

Example1:输入: s = “egg”, t = “add”输出: trueExample2:输入: s = “foo”, t = “bar”输出: falseExample3:输入: s = “paper”, t = “title”输出: true题目中默认s和t的长度相等则无需先判断s,t长度是否相等一、index简单遍历首先是最简单的index函数方法,当字符重复时index默认返回首先找到的值若s中重复但t中不重复在遍历重复的值时:对于重复的值s都会

2020-12-27 00:54:26 214

原创 leetcode 84. 柱状图中最大的矩形

暴力中央拓展法每次遍历时从中心向两边进行扩展对于每一个i寻找它左侧比它更小的数值,并记录其的索引寻找其右侧比它更小的数值,并记录其索引这样就能保证矩形左侧达到最大的同时右侧也达到最大最后计算出两个索引的差-1就是矩形的宽度对于每一个i,其能形成的矩形最大的高度就是iclass Solution: def largestRectangleArea(self, heights: List[int]) -> int: n = len(heights)

2020-12-26 22:24:25 91

原创 leetcode 455. 分发饼干 贪心算法

Example 1:输入: g = [1,2,3], s = [1,1]输出: 1解释:你有三个孩子和两块小饼干,3个孩子的胃口值分别是:1,2,3。虽然你有两块小饼干,由于他们的尺寸都是1,你只能让胃口值是1的孩子满足。所以你应该输出1。Example 2:输入: g = [1,2], s = [1,2,3]输出: 2解释:你有两个孩子和三块小饼干,2个孩子的胃口值分别是1,2。你拥有的饼干数量和尺寸都足以让所有孩子满足。所以你应该输出2.首先对两个列表都进行排序分配

2020-12-25 14:23:43 243

原创 leetcode 135. 分发糖果 贪心算法

老师想给孩子们分发糖果,有 N 个孩子站成了一条直线,老师会根据每个孩子的表现,预先给他们评分。你需要按照以下要求,帮助老师给这些孩子分发糖果:每个孩子至少分配到 1 个糖果。相邻的孩子中,评分高的孩子必须获得更多的糖果。那么这样下来,老师至少需要准备多少颗糖果呢?example 1:输入: [1,0,2]输出: 5解释: 你可以分别给这三个孩子分发 2、1、2 颗糖果。example2:输入: [1,2,2]输出: 4解释: 你可以分别给这三个孩子分发 1、2、1 颗糖果。第三个

2020-12-24 16:41:47 171 1

原创 leetcode 387. 字符串中的第一个唯一字符

如下示例s = “leetcode”返回 0s = “loveleetcode”返回 2对于首次不重复的字符仅需返回其对应的索引(第二种方法无需提前检查)而重复的返回-1第一种方法:先判断是否为空为空返回-1之后每次判断是否字符中的值存在次数是否为1若是满足条件返回索引不是不满足条件返回空(此种方法效率极低不推荐)class Solution: def firstUniqChar(self, s: str) -> int: if len(s) == 0

2020-12-24 00:07:12 67

原创 力扣 leetcode 103. 二叉树的锯齿形层序遍历 BFS方法

102题为本题的“先导题”,102题解答中的表述本题解答不再赘述https://blog.csdn.net/weixin_50791900/article/details/111569831在102题的基础上,仅需考虑逆序遍历的层在此我运用了level变量记录该层是否需要倒序遍历初始设为0,每遍历一层加一(同样是记录二叉树的深度)奇数层需要逆序原来的遍历顺序无需改变仅需要在逆序便利的层中将值在列表头插入在这里我运用的insert方法在0位插入实现的逆序插入的效果class Solution

2020-12-23 03:58:16 432

原创 leetcode102. 二叉树的层序遍历 BFS解决

嗯今天(啊不,其实是昨天)的每日一题是103,所以我选择先做102又是令人心旷神怡的二叉树题目是给定二叉树:[3,9,20,null,null,15,7],3/ 9 20/ 15 7要求按照层序遍历结果为[[3],[9,20],[15,7]]首先判断给定的二叉树根不为空,若空则返回空建立返回的节点值列表为ans本题可以运用广度优先算法解决(后来看大佬们都用collections的双端队列解决,直接用列表的pop(0)也行)(听大佬说collections的方法

2020-12-23 01:22:35 185

原创 leetcode 746. 使用最小花费爬楼梯

首先题目中叙述了cost 的长度将会在 [2, 1000]就不用判断cost的长度是否符合了可以运用动态规划解决本题先分为两个部分解决第一个部分选择从索引为 0 或 1 的元素作为初始阶梯以平地为起点选择上一个或者两个第二个部分是判断上第i个台阶(索引)时,判断从i-1和i-2中消耗之前总消耗小的那个方法(台阶)上同时加上第i个台阶的消耗值输出为上到第i个台阶的总消耗因为上到倒数第二个台阶时可以直接输出所以最后返回上倒数第二个台阶和倒数第一个台阶两种方法的值class Solution

2020-12-21 19:21:11 92

空空如也

空空如也

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

TA关注的人

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