自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

FarStars的博客

记录自己学习的过程和遇到的问题

  • 博客(67)
  • 收藏
  • 关注

原创 leetcode系列会新增python3代码,持续更新中...

我会从leetcode第一题开始,持续更新python代码,敬请期待吧…

2020-02-26 12:08:03 135

原创 leetcode每日一题.136:只出现一次的数字

题目描述:给定一个非空整数数组,除了某个元素只出现一次以外,其余每个元素均出现两次。找出那个只出现了一次的元素。说明:你的算法应该具有线性时间复杂度。 你可以不使用额外空间来实现吗?来源:力扣(LeetCode)链接:https://leetcode-cn.com/problems/single-number著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。示例1:输入: [2,2,1]输出: 1示例2:输入: [4,1,2,1,2]输出: 4分析:直

2020-05-14 22:43:37 230

原创 leetcode每日一题.199:二叉树的右视图

题目描述:给定一棵二叉树,想象自己站在它的右侧,按照从顶部到底部的顺序,返回从右侧所能看到的节点值。来源:力扣(LeetCode)链接:https://leetcode-cn.com/problems/binary-tree-right-side-view著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。示例1:输入: [1,2,3,null,5,null,4]...

2020-04-22 23:11:16 317

原创 leetcode每日一题.200:岛屿数量

题目描述:给你一个由 '1'(陆地)和 '0'(水)组成的的二维网格,请你计算网格中岛屿的数量。岛屿总是被水包围,并且每座岛屿只能由水平方向和/或竖直方向上相邻的陆地连接形成。此外,你可以假设该网格的四条边均被水包围。来源:力扣(LeetCode)链接:https://leetcode-cn.com/problems/number-of-islands著作权归领扣网络所有。商业转...

2020-04-20 18:44:02 812

原创 leetcode每日一题.445:两数相加II

题目描述:给你两个 非空 链表来代表两个非负整数。数字最高位位于链表开始位置。它们的每个节点只存储一位数字。将这两数相加会返回一个新的链表。你可以假设除了数字 0 之外,这两个数字都不会以零开头。来源:力扣(LeetCode)链接:https://leetcode-cn.com/problems/add-two-numbers-ii著作权归领扣网络所有。商业转载请联系官方授权,非商业...

2020-04-14 18:19:10 201

原创 leetcode每日一题.面试题13:机器人的运动范围

题目描述:地上有一个m行n列的方格,从坐标 [0,0] 到坐标 [m-1,n-1] 。一个机器人从坐标 [0, 0] 的格子开始移动,它每次可以向左、右、上、下移动一格(不能移动到方格外),也不能进入行坐标和列坐标的数位之和大于k的格子。例如,当k为18时,机器人能够进入方格 [35, 37] ,因为3+5+3+7=18。但它不能进入方格 [35, 38],因为3+5+3+8=19。请问该机器人...

2020-04-08 19:06:20 432

原创 leetcode每日一题.面试题01.07:旋转矩阵

题目描述:给你一幅由 N × N 矩阵表示的图像,其中每个像素的大小为 4 字节。请你设计一种算法,将图像旋转 90 度。不占用额外内存空间能否做到?来源:力扣(LeetCode)链接:https://leetcode-cn.com/problems/rotate-matrix-lcci著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。示例1:给定 matri...

2020-04-07 15:45:25 258

原创 leetcode每日一题.面试题62:圆圈中最后剩下的数字

题目描述:0,1,,n-1这n个数字排成一个圆圈,从数字0开始,每次从这个圆圈里删除第m个数字。求出这个圆圈里剩下的最后一个数字。例如,0、1、2、3、4这5个数字组成一个圆圈,从数字0开始每次删除第3个数字,则删除的前4个数字依次是2、0、4、1,因此最后剩下的数字是3。来源:力扣(LeetCode)链接:https://leetcode-cn.com/problems/yuan-q...

2020-03-30 19:31:19 241

原创 leetcode.75:颜色分类

题目描述:给定一个包含红色、白色和蓝色,一共 n 个元素的数组,原地对它们进行排序,使得相同颜色的元素相邻,并按照红色、白色、蓝色顺序排列。此题中,我们使用整数 0、 1 和 2 分别表示红色、白色和蓝色。注意:不能使用代码库中的排序函数来解决这道题。来源:力扣(LeetCode)链接:https://leetcode-cn.com/problems/sort-colors著作...

2020-03-25 18:57:47 156

原创 leetcode.74:搜索二维矩阵

题目描述:编写一个高效的算法来判断 m x n 矩阵中,是否存在一个目标值。该矩阵具有如下特性:·每行中的整数从左到右按升序排列。·每行的第一个整数大于前一行的最后一个整数。来源:力扣(LeetCode)链接:https://leetcode-cn.com/problems/search-a-2d-matrix著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。...

2020-03-14 17:47:22 141

原创 leetcode.70:爬楼梯

题目描述:假设你正在爬楼梯。需要 n 阶你才能到达楼顶。每次你可以爬 1 或 2 个台阶。你有多少种不同的方法可以爬到楼顶呢?注意:给定 n 是一个正整数。示例1:输入: 2输出: 2解释: 有两种方法可以爬到楼顶。1. 1 阶 + 1 阶2. 2 阶示例2:输入: 3输出: 3解释: 有三种方法可以爬到楼顶。1. 1 阶 + 1 阶 + 1 阶2. 1 ...

2020-03-12 23:30:13 171

原创 leetcode.69:x的平方根

题目描述:实现 int sqrt(int x) 函数。计算并返回 x 的平方根,其中 x 是非负整数。由于返回类型是整数,结果只保留整数的部分,小数部分将被舍去。来源:力扣(LeetCode)链接:https://leetcode-cn.com/problems/sqrtx著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。示例1:输入: 4输出: 2...

2020-03-10 22:16:09 116

原创 leetcode:68.文本左右对齐

题目描述:给定一个单词数组和一个长度 maxWidth,重新排版单词,使其成为每行恰好有 maxWidth 个字符,且左右两端对齐的文本。你应该使用“贪心算法”来放置给定的单词;也就是说,尽可能多地往每行中放置单词。必要时可用空格 ' ' 填充,使得每行恰好有 maxWidth 个字符。要求尽可能均匀分配单词间的空格数量。如果某一行单词间的空格不能均匀分配,则左侧放置的空格数要多于右侧的...

2020-03-09 20:20:59 399

原创 leetcode:67.二进制求和

题目描述:给定两个二进制字符串,返回他们的和(用二进制表示)。输入为非空字符串且只包含数字 1 和 0。示例1:输入: a = "11", b = "1"输出: "100"示例2:输入: a = "1010", b = "1011"输出: "10101"题目难度:简单分析:简单题,不要用api…思路就是从最低位开始相加,遇2进1即可。java:class Solu...

2020-03-05 17:55:09 175

原创 leetcode:66.加一

题目描述:给定一个由整数组成的非空数组所表示的非负整数,在该数的基础上加一。最高位数字存放在数组的首位, 数组中每个元素只存储单个数字。你可以假设除了整数 0 之外,这个整数不会以零开头。来源:力扣(LeetCode)链接:https://leetcode-cn.com/problems/plus-one著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。示例...

2020-03-04 20:40:58 112

原创 leetcode:61.旋转链表

题目描述:给定一个链表,旋转链表,将链表每个节点向右移动 k 个位置,其中 k 是非负数。示例1:输入: 1->2->3->4->5->NULL, k = 2输出: 4->5->1->2->3->NULL解释:向右旋转 1 步: 5->1->2->3->4->NULL向右旋转 2 步: 4-&g...

2020-03-03 17:21:47 142

原创 leetcode:59.螺旋矩阵II

题目描述:给定一个正整数 n,生成一个包含 1 到 n2n^2n2 所有元素,且元素按顺时针顺序螺旋排列的正方形矩阵。示例:输入: 3输出:[ [ 1, 2, 3 ], [ 8, 9, 4 ], [ 7, 6, 5 ]]题目难度:中等分析:和前面的54.螺旋矩阵I同样的道理,还是模拟路径,首先绘制出一个n*n的矩阵,然后顺时针按照从左到右,从上到下,从右到左,从下到上的方...

2020-03-02 18:52:05 276

转载 为什么程序猿996多猝屎,而企业家007却不会?

...

2019-07-31 10:04:45 242 2

原创 leetcode:58.最后一个单词的长度

题目描述:给定一个仅包含大小写字母和空格 ’ ’ 的字符串,返回其最后一个单词的长度。如果不存在最后一个单词,请返回 0 。说明:一个单词是指由字母组成,但不包含任何空格的字符串。示例:输入: "Hello World"输出: 5题目难度:简单分析:很简单的一道题,解法很多,没啥好说的。解法一:直接以空字符串拆分成数组,然后再读最后一个元素的长度即可。代码如下:class...

2019-07-07 22:30:14 139

原创 leetcode:55.跳跃游戏

题目描述:给定一个非负整数数组,你最初位于数组的第一个位置。数组中的每个元素代表你在该位置可以跳跃的最大长度。判断你是否能够到达最后一个位置。示例1:输入: [2,3,1,1,4]输出: true解释: 从位置 0 到 1 跳 1 步, 然后跳 3 步到达最后一个位置。示例2:输入: [3,2,1,0,4]输出: false解释: 无论怎样,你总会到达索引为 3 的位置。但...

2019-07-02 20:01:23 167

原创 java解析json数据生成mysql省市区街道四级联动sql

省市区联动在项目中算是比较常见的功能了,但是基础数据却非常多,网上很难找到比较全的数据,不过在github上有人利用爬虫抓取了国家统计局的数据,并生成了json文件,这样就可以利用java解析json文件并生成相应的sql文件,非常简单。(注意:数据不含港澳台,因为原json就没有。)github地址:https://github.com/modood/Administrative-divis...

2019-07-01 18:55:37 2183 3

原创 leetcode:54.螺旋矩阵

题目描述:给定一个包含 m x n 个元素的矩阵(m 行, n 列),请按照顺时针螺旋顺序,返回矩阵中的所有元素。示例1:输入:[ [ 1, 2, 3 ], [ 4, 5, 6 ], [ 7, 8, 9 ]]输出: [1,2,3,6,9,8,7,4,5]示例2:输入:[ [1, 2, 3, 4], [5, 6, 7, 8], [9,10,11,12]]输出...

2019-06-23 14:59:31 137

原创 leetcode:53.最大字序和

题目描述:给定一个整数数组 nums ,找到一个具有最大和的连续子数组(子数组最少包含一个元素),返回其最大和。示例:输入: [-2,1,-3,4,-1,2,1,-5,4],输出: 6解释: 连续子数组 [4,-1,2,1] 的和最大,为 6。题目难度:简单分析:题目的意思就是说在数组中找到一串连续的元素,使得这些元素相加最大。直接遍历数组即可,把每个元素都相加起来,maxSu...

2019-06-16 22:07:55 134

原创 java并发编程:死锁代码示例

java并发编程:死锁代码示例死锁概念:死锁是指两个或两个以上的进程在执行过程中,由于竞争资源或者由于彼此通信而造成的一种阻塞的现象,若无外力作用,它们都将无法推进下去。此时称系统处于死锁状态或系统产生了死锁,这些永远在互相等待的进程称为死锁进程。-------- 百度百科死锁的规范定义:集合中的每一个进程都在等待只能由本集合中的其他进程才能引发的事件,那么该组进程是死锁的。--...

2019-05-26 18:31:59 330

原创 leetcode:50.Pow(x, n)

题目描述:实现 pow(x, n),即计算 x 的 n 次幂函数。示例1:输入: 2.00000, 10输出: 1024.00000示例2:输入: 2.10000, 3输出: 9.26100示例3:输入: 2.00000, -2输出: 0.25000解释: 2^-2 = 1/2^2 = 1/4 = 0.25说明:-100.0 < x < 100.0n...

2019-05-23 19:41:50 103

原创 leetcode:49.字母异位词分组

题目描述:给定一个字符串数组,将字母异位词组合在一起。字母异位词指字母相同,但排列不同的字符串。示例:输入: ["eat", "tea", "tan", "ate", "nat", "bat"],输出:[ ["ate","eat","tea"], ["nat","tan"], ["bat"]]题目难度:中等分析:根据题目可知:就是要找出所有字符串中字符相同的单词合并...

2019-05-20 18:42:59 159

原创 leetcode:47.全排列 II

题目描述:给定一个可包含重复数字的序列,返回所有不重复的全排列。示例:输入: [1,1,2]输出:[ [1,1,2], [1,2,1], [2,1,1]]题目难度:中等分析:题目和前几题都差不多,直接用Set去重比较简单,递归列出所有的排列。代码如下:class Solution { public List<List<Integer>&...

2019-05-14 15:27:05 101

原创 leetcode:46.全排列

题目描述:给定一个没有重复数字的序列,返回其所有可能的全排列。示例:输入: [1,2,3]输出:[ [1,2,3], [1,3,2], [2,1,3], [2,3,1], [3,1,2], [3,2,1]]题目难度:中等分析:利用递归,即可枚举出全排列。代码如下:class Solution { public List<List<...

2019-05-06 21:25:12 122

原创 leetcode:45.跳跃游戏 II

题目描述:给定一个非负整数数组,你最初位于数组的第一个位置。数组中的每个元素代表你在该位置可以跳跃的最大长度。你的目标是使用最少的跳跃次数到达数组的最后一个位置。示例:输入: [2,3,1,1,4]输出: 2解释: 跳到最后一个位置的最小跳跃数是 2。 从下标为 0 跳到下标为 1 的位置,跳 1 步,然后跳 3 步到达数组的最后一个位置。说明:假设你总是可以到达数组...

2019-04-26 16:27:21 105

原创 leetcode:43.字符串相乘

题目描述:给定两个以字符串形式表示的非负整数 num1和 num2,返回 num1和 num2的乘积,它们的乘积也表示为字符串形式。示例1:输入: num1 = "2", num2 = "3"输出: "6"示例2:输入: num1 = "123", num2 = "456"输出: "56088"说明:num1和 num2的长度小于110。num1和 num2只包含数字 0...

2019-04-24 21:09:47 116

原创 java源码分析:ArrayList的扩容机制

java源码分析:ArrayList的扩容机制ArrayList是java中最常用的集合之一,底层的数据结构是数组,在学习集合时,阅读源码是必不可少的环节之一,阅读源码可以有效的帮助我们深入了解其工作原理,下面根据源码详细的介绍下扩容机制,环境为jdk1.8。首先看看它的无参构造,ArrayList无参构造方法如下: /** * Constructs an empty list w...

2019-04-24 01:02:38 553

原创 leetcode:41.缺失的第一个正数

题目描述:给定一个未排序的整数数组,找出其中没有出现的最小的正整数。示例1:输入: [1,2,0]输出: 3示例2:输入: [3,4,-1,1]输出: 2示例3:输入: [7,8,9,11,12]输出: 1说明:你的算法的时间复杂度应为O(n),并且只能使用常数级别的空间。题目难度:困难分析:对于未排序数组并且限定了时间复杂度的话,只能通过额外的空间(这里有点不...

2019-04-23 21:49:00 100

原创 leetcode:40.组合总和 II

题目描述:给定一个数组 candidates和一个目标数 target,找出 candidates中所有可以使数字和为 target的组合。candidates中的每个数字在每个组合中只能使用一次。说明:所有数字(包括目标数)都是正整数。解集不能包含重复的组合。示例1:输入: candidates = [10,1,2,7,6,1,5], target = 8,所求解集为:[...

2019-04-22 20:11:13 135

原创 leetcode:39.组合总和

题目描述:给定一个无重复元素的数组 candidates和一个目标数 target,找出 candidates中所有可以使数字和为 target的组合。candidates中的数字可以无限制重复被选取。说明:所有数字(包括 target)都是正整数。解集不能包含重复的组合。示例1:输入: candidates = [2,3,6,7], target = 7,所求解集为:[ ...

2019-04-21 20:09:31 133

原创 leetcode:38.报数

题目描述:报数序列是一个整数序列,按照其中的整数的顺序进行报数,得到下一个数。其前五项如下:1. 12. 113. 214. 12115. 1112211被读作 “one 1” ("一个一") , 即 11。11被读作 “two 1s” ("两个一"), 即 21。21被读作 “one 2”, “one 1” ("一个二" , “...

2019-04-19 13:48:50 93

原创 leetcode:36.有效的数独

题目描述:判断一个 9x9 的数独是否有效。只需要根据以下规则,验证已经填入的数字是否有效即可。数字 1-9 在每一行只能出现一次。数字 1-9 在每一列只能出现一次。数字 1-9 在每一个以粗实线分隔的 3x3 宫内只能出现一次。上图是一个部分填充的有效的数独。数独部分空格内已填入了数字,空白格用 '.'表示。示例1:输入:[ ["5","3",".",".","7"...

2019-04-18 13:16:07 119

原创 leetcode:35.搜索插入位置

题目描述:给定一个排序数组和一个目标值,在数组中找到目标值,并返回其索引。如果目标值不存在于数组中,返回它将会被按顺序插入的位置。你可以假设数组中无重复元素。示例1:输入: [1,3,5,6], 5输出: 2示例2:输入: [1,3,5,6], 2输出: 1示例3:输入: [1,3,5,6], 7输出: 4示例4:输入: [1,3,5,6], 0输出: 0题目...

2019-04-15 14:03:55 91

原创 leetcode:31.下一个排列

题目描述:实现获取下一个排列的函数,算法需要将给定数字序列重新排列成字典序中下一个更大的排列。如果不存在下一个更大的排列,则将数字重新排列成最小的排列(即升序排列)。必须原地修改,只允许使用额外常数空间。以下是一些例子,输入位于左侧列,其相应输出位于右侧列。1,2,3→ 1,3,23,2,1→ 1,2,31,1,5→ 1,5,1题目难度:中等分析:题目的下一个排列可以理解为:把...

2019-04-14 13:04:17 169

原创 leetcode:29.两数相除

题目描述:给定两个整数,被除数 dividend和除数 divisor。将两数相除,要求不使用乘法、除法和 mod 运算符。返回被除数 dividend除以除数 divisor得到的商。示例1:输入: dividend = 10, divisor = 3输出: 3示例2:输入: dividend = 7, divisor = -3输出: -2说明:被除数和除数均为 32 ...

2019-04-11 22:12:51 162

原创 leetcode:28.实现strStr()

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

2019-04-10 23:28:38 90

空空如也

空空如也

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

TA关注的人

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