
2019
码农在途
『 码农在途 』公众号作者 ,在这里你会看见一个编程小白成长的历程。感谢你的关注 ,期待和你一起共同成长。
展开
-
LeetCode 148-排序链表
LeetCode 148.排序链表 题目链接在 O(n log n) 时间复杂度和常数级空间复杂度下,对链表进行排序。示例 1:输入: 4->2->1->3输出: 1->2->3->4示例 2:输入: -1->5->3->4->0输出: -1->0->3->4->5解题思路:我采用的是一原创 2019-01-05 12:15:02 · 265 阅读 · 0 评论 -
LeetCode 657. 机器人能否返回原点
机器人能否返回原点在二维平面上,有一个机器人从原点 (0, 0) 开始。给出它的移动顺序,判断这个机器人在完成移动后是否在 (0, 0) 处结束。移动顺序由字符串表示。字符 move[i] 表示其第 i 次移动。机器人的有效动作有 R(右),L(左),U(上)和 D(下)。如果机器人在完成所有动作后返回原点,则返回 true。否则,返回 false。注意:机器人“面朝”的方向无关紧...原创 2019-01-27 17:01:46 · 279 阅读 · 0 评论 -
LeetCode 461. 汉明距离
汉明距离两个整数之间的汉明距离指的是这两个数字对应二进制位不同的位置的数目。给出两个整数 x 和 y,计算它们之间的汉明距离。注意:0 ≤ x, y < 231.示例:输入: x = 1, y = 4输出: 2解释:1 (0 0 0 1)4 (0 1 0 0)↑ ↑上面的箭头指出了对应二进制位不同的位置。解题思路:while 循环 X...原创 2019-01-27 17:11:20 · 338 阅读 · 0 评论 -
LeetCode 476、数字的补数
476、数字的补数 题目链接给定一个正整数,输出它的补数。补数是对该数的二进制表示取反。注意:给定的整数保证在32位带符号整数的范围内。你可以假定二进制数不包含前导零位。示例 1:输入: 5输出: 2解释: 5的二进制表示为101(没有前导零位),其补数为010。所以你需要输出2。示例 2:输入: 1输出: 0解释: 1的二进制表示为1(没有前导零位),其补数...原创 2019-02-03 16:04:44 · 234 阅读 · 0 评论 -
LeetCode. 41 - 缺失的第一个正数
缺失的第一个正数 题目链接给定一个未排序的整数数组,找出其中没有出现的最小的正整数。示例 1:输入: [1,2,0]输出: 3示例 2:输入: [3,4,-1,1]输出: 2示例 3:输入: [7,8,9,11,12]输出: 1参考了社区的解答。解题思路 :1、由题可得数组索引 index 对应的值为 index + 1,整个数组的取值范围为 [ 1 , ...原创 2019-02-16 11:04:52 · 190 阅读 · 0 评论 -
LeetCode.973. 最接近原点的 K 个点
最接近原点的 K 个点我们有一个由平面上的点组成的列表 points。需要从中找出 K 个距离原点 (0, 0) 最近的点。(这里,平面上两点之间的距离是欧几里德距离。)你可以按任何顺序返回答案。除了点坐标的顺序之外,答案确保是唯一的。示例 1:输入:points = [[1,3],[-2,2]], K = 1输出:[[-2,2]]解释:(1, 3) 和原点之间的距离为 ...原创 2019-02-10 14:06:16 · 749 阅读 · 0 评论 -
左耳听风 第十四周
左耳听风 第十四周每周完成一个ARTS: 每周至少做一个 leetcode 的算法题、阅读并点评至少一篇英文技术文章、学习至少一个技术技巧、分享一篇有观点和思考的技术文章。(也就是 Algorithm、Review、Tip、Share 简称ARTS)AlgorithmLeetCode.973. 最接近原点的 K 个点reviewWhy Do All Websites Look the...原创 2019-02-10 21:10:26 · 295 阅读 · 0 评论 -
左耳听风 第十五周
左耳听风 第十五周每周完成一个ARTS: 每周至少做一个 leetcode 的算法题、阅读并点评至少一篇英文技术文章、学习至少一个技术技巧、分享一篇有观点和思考的技术文章。(也就是 Algorithm、Review、Tip、Share 简称ARTS)AlgorithmLeetCode. 15 - 三数之和LeetCode. 169 - 求众数LeetCode. 41 - 缺失的第一个...原创 2019-02-17 20:27:14 · 677 阅读 · 0 评论 -
LeetCode. 15 - 三数之和
三数之和题目链接给定一个包含 n 个整数的数组 nums,判断 nums 中是否存在三个元素 a,b,c ,使得 a + b + c = 0 ?找出所有满足条件且不重复的三元组。注意:答案中不可以包含重复的三元组。例如, 给定数组 nums = [-1, 0, 1, 2, -1, -4],满足要求的三元组集合为:[[-1, 0, 1],[-1, -1, 2]]解题思路...原创 2019-02-12 22:56:43 · 184 阅读 · 0 评论 -
LeetCode.169 - 求众数
求众数 题目链接给定一个大小为 n 的数组,找到其中的众数。众数是指在数组中出现次数大于 ⌊ n/2 ⌋ 的元素。你可以假设数组是非空的,并且给定的数组总是存在众数。示例 1:输入: [3,2,3]输出: 3示例 2:输入: [2,2,1,1,1,2,2]输出: 2解题思路:将数组排序,统计每个数字出现的次数,当满足众数条件时返回。时间复杂度 nlognint co...原创 2019-02-13 12:01:08 · 159 阅读 · 0 评论 -
LeetCode. 23 - 合并 K个排序序列
合并 K 个排序序列 题目链接合并 k 个排序链表,返回合并后的排序链表。请分析和描述算法的复杂度。示例:输入:[1->4->5,1->3->4,2->6]输出: 1->1->2->3->4->4->5->6解题思路:采用分治的思想,将 K 个链表的合并问题转换成,合并 2 个有序链表的问题type...原创 2019-02-19 09:59:17 · 285 阅读 · 0 评论 -
左耳听风 第十二周
左耳听风 第十二周每周完成一个ARTS: 每周至少做一个 leetcode 的算法题、阅读并点评至少一篇英文技术文章、学习至少一个技术技巧、分享一篇有观点和思考的技术文章。(也就是 Algorithm、Review、Tip、Share 简称ARTS)AlgorithmLeetCode 944.删造序列LeetCode.942 增减字符串匹配reviewI interviewed a...原创 2019-01-27 16:56:44 · 389 阅读 · 0 评论 -
LeetCode 944.删造序列
LeetCode 944.删造序列题目链接给定由 N 个小写字母字符串组成的数组 A,其中每个字符串长度相等。选取一个删除索引序列,对于 A 中的每个字符串,删除对应每个索引处的字符。 所余下的字符串行从上往下读形成列。比如,有 A = [“abcdef”, “uvwxyz”],删除索引序列 {0, 2, 3},删除后 A 为[“bef”, “vyz”], A 的列分别为[“b”,“v...原创 2019-01-26 11:02:20 · 336 阅读 · 0 评论 -
LeetCode 844. 比较含退格的字符串
844. 比较含退格的字符串给定 S 和 T 两个字符串,当它们分别被输入到空白的文本编辑器后,判断二者是否相等,并返回结果。 # 代表退格字符。示例 1:输入:S = “ab#c”, T = “ad#c”输出:true解释:S 和 T 都会变成 “ac”。示例 2:输入:S = “ab##”, T = “c#d#”输出:true解释:S 和 T 都会变成 “”。...原创 2019-01-05 14:39:24 · 352 阅读 · 0 评论 -
简单分析 C 语言的 qsort() 源码
简单分析 C 语言的 qsort() 源码stdlib.h 是使用 C 语言需要引入的库,在系统文件下可以搜索到这个文件夹,在里面可以看到有一个 qsort() 文件用编译器或者记事本打开就能看到里面的源码了。单从文件名看,qsort() 采用的是快速排序算法,算法的时间复杂度为 O(nlogn) ,通常在企业的实际应用中对于快排这种 nlogn 复杂度的算法应用较多,对于 O(n) 例如 ...原创 2019-01-06 16:53:08 · 6430 阅读 · 0 评论 -
左耳听风 第九周
左耳听风 第九周每周完成一个ARTS: 每周至少做一个 leetcode 的算法题、阅读并点评至少一篇英文技术文章、学习至少一个技术技巧、分享一篇有观点和思考的技术文章。(也就是 Algorithm、Review、Tip、Share 简称ARTS)AlgorithmLeetCode 844. 比较含退格的字符串LeetCode 148-排序链表Reviewhow to learn ...原创 2019-01-06 16:57:27 · 472 阅读 · 0 评论 -
LeetCode 709. 转换成小写字母
709. 转换成小写字母题目链接实现函数 ToLowerCase(),该函数接收一个字符串参数 str,并将该字符串中的大写字母转换成小写字母,之后返回新的字符串。示例 1:输入: “Hello”输出: “hello”示例 2:输入: “here”输出: “here”示例 3:输入: “LOVELY”输出: “lovely”解题思路 :大写字母的 ASCLL...原创 2019-01-12 12:14:02 · 349 阅读 · 0 评论 -
LeeetCode 961.重复 N 次的元素
961.重复 N 次的元素在大小为 2N 的数组 A 中有 N+1 个不同的元素,其中有一个元素重复了 N 次。返回重复了 N 次的那个元素。示例 1:输入:[1,2,3,3]输出:3示例 2:输入:[2,1,2,5,3,2]输出:2示例 3:输入:[5,1,5,2,5,3,5,4]输出:5提示:4 <= A.length <= 10000...原创 2019-01-12 13:45:02 · 215 阅读 · 0 评论 -
左耳听风 第十周
左耳听风 第十周每周完成一个ARTS: 每周至少做一个 leetcode 的算法题、阅读并点评至少一篇英文技术文章、学习至少一个技术技巧、分享一篇有观点和思考的技术文章。(也就是 Algorithm、Review、Tip、Share 简称ARTS)AlgorithmLeetCode 709. 转换成小写字母LeeetCode 961.重复 N 次的元素ReviewHere are ...原创 2019-01-12 17:18:02 · 204 阅读 · 0 评论 -
LeetCode 905. 按奇偶排序数组
905. 按奇偶排序数组题目链接给定一个非负整数数组 A,返回一个由 A 的所有偶数元素组成的数组,后面跟 A 的所有奇数元素。你可以返回满足此条件的任何数组作为答案。示例:输入:[3,1,2,4]输出:[2,4,3,1]输出 [4,2,3,1],[2,4,1,3] 和 [4,2,1,3] 也会被接受。解题思路:这里将判断是否为偶数改为了「&」(与运算),当计算数据...原创 2019-01-18 16:33:02 · 191 阅读 · 0 评论 -
LeetCode 832.翻转图像
翻转图像题目链接给定一个二进制矩阵 A,我们想先水平翻转图像,然后反转图像并返回结果。水平翻转图片就是将图片的每一行都进行翻转,即逆序。例如,水平翻转 [1, 1, 0] 的结果是 [0, 1, 1]。反转图片的意思是图片中的 0 全部被 1 替换, 1 全部被 0 替换。例如,反转 [0, 1, 1] 的结果是 [1, 0, 0]。示例 1:输入: [[1,1,0],[...原创 2019-01-18 19:05:51 · 445 阅读 · 0 评论 -
左耳听风 第十一周
左耳听风第十一周shareHow I went from newbie to Software Engineer in 9 months while working full time作者分享了自己 9 个月从 0 基础到成为软件开发工程师的经历。总结下来,作者成功的主要原因为:兴趣和目标目标。当作者发现自己想要成为一名软件开发工作者后就开始计划自己的目标,即使是全职也坚定的完成自己的目...原创 2019-01-19 20:53:47 · 203 阅读 · 0 评论 -
LeetCode.942 增减字符串匹配
增减字符串匹配 题目链接给定只含 “I”(增大)或 “D”(减小)的字符串 S ,令 N = S.length。返回 [0, 1, …, N] 的任意排列 A 使得对于所有 i = 0, …, N-1,都有:如果 S[i] == “I”,那么 A[i] < A[i+1]如果 S[i] == “D”,那么 A[i] > A[i+1]示例 1:输出:“IDID”输出:[...原创 2019-01-25 16:58:23 · 337 阅读 · 0 评论 -
左耳听风 第十六周
左耳听风 第十六周每周完成一个ARTS: 每周至少做一个 leetcode 的算法题、阅读并点评至少一篇英文技术文章、学习至少一个技术技巧、分享一篇有观点和思考的技术文章。(也就是 Algorithm、Review、Tip、Share 简称ARTS)AlgorithmLeetCode· 88. 合并两个有序数组LeetCode. 23 - 合并 K个排序序列reviewHow to...原创 2019-02-24 17:46:00 · 176 阅读 · 0 评论