leetcode刷题
西山枫叶
计算机专业 做爬虫 / 逆向 / python 后端
展开
-
leetcode(46)-----189. Rotate Array
189. 旋转数组Given an array, rotate the array to the right by k steps, where k is non-negative.Example 1:Input: [1,2,3,4,5,6,7] and k = 3Output: [5,6,7,1,2,3,4]Explanation:rotate 1 steps to the...原创 2018-08-31 20:22:58 · 219 阅读 · 0 评论 -
leetcode(45)-----122. Best Time to Buy and Sell Stock II
122. 买卖股票的最佳时机 II Say you have an array for which the ith element is the price of a given stock on day i.Design an algorithm to find the maximum profit. You may complete as many transactions as you...原创 2018-08-31 19:43:07 · 353 阅读 · 0 评论 -
leetcode(27)------位1的个数
191. 位1的个数 编写一个函数,输入是一个无符号整数,返回其二进制表达式中数字位数为 ‘1’ 的个数(也被称为汉明重量)。示例 1:输入: 11输出: 3解释: 整数 11 的二进制表示为 00000000000000000000000000001011示例 2:输入: 128输出: 1解释: 整数 128 的二进制表示为 00000000000000000000...原创 2018-08-21 12:34:11 · 195 阅读 · 0 评论 -
leetcode(26)-----4的幂
4的幂 给定一个整数 (32 位有符号整数),请编写一个函数来判断它是否是 4 的幂次方。示例 1:输入: 16输出: true示例 2:输入: 5输出: falsePython代码实现:1.循环class Solution: def isPowerOfFour(self, num): if num <= 0: ...原创 2018-08-21 11:33:52 · 428 阅读 · 0 评论 -
leetcode(25)-----2的幂
给定一个整数,编写一个函数来判断它是否是 2 的幂次方。示例 1:输入: 1输出: true解释: 20 = 1示例 2:输入: 16输出: true解释: 24 = 16示例 3:输入: 218输出: falsePython代码实现: 1.循环class Solution: def isPowerOfTwo(self, n): ...原创 2018-08-21 11:16:03 · 203 阅读 · 0 评论 -
leetcode(24)-----Power of Three
326. 3的幂 Given an integer, write a function to determine if it is a power of three.Example 1:Input: 27Output: trueExample 2:Input: 0Output: falseExample 3:Input: 9Output: trueE...原创 2018-08-21 10:48:43 · 202 阅读 · 0 评论 -
leetcode(34)-----对称二叉树
101. 对称二叉树 给定一个二叉树,检查它是否是镜像对称的。例如,二叉树 [1,2,2,3,4,4,3] 是对称的。 1 / \ 2 2 / \ / \3 4 4 3但是下面这个 [1,2,2,null,3,null,3] 则不是镜像对称的: 1 / \ 2 2 \ \ 3 3说明:如果你可以运用...原创 2018-08-23 22:19:12 · 213 阅读 · 0 评论 -
leetcode(33)-----98. 验证二叉搜索树
给定一个二叉树,判断其是否是一个有效的二叉搜索树。假设一个二叉搜索树具有如下特征:节点的左子树只包含小于当前节点的数。节点的右子树只包含大于当前节点的数。所有左子树和右子树自身必须也是二叉搜索树。示例 1:输入: 2 / \ 1 3输出: true示例 2:输入: 5 / \ 1 4 / \ 3 ...原创 2018-08-23 21:40:11 · 250 阅读 · 0 评论 -
leetcode(32)-----111. 二叉树的最小深度
111. 二叉树的最小深度 给定一个二叉树,找出其最小深度。最小深度是从根节点到最近叶子节点的最短路径上的节点数量。说明: 叶子节点是指没有子节点的节点。示例:给定二叉树 [3,9,20,null,null,15,7], 3 / \ 9 20 / \ 15 7返回它的最小深度 2.Python代码实现: 思路: 1.先...原创 2018-08-23 20:21:36 · 248 阅读 · 0 评论 -
leetcode(31)-----104. 二叉树的最大深度
104. 二叉树的最大深度 给定一个二叉树,找出其最大深度。二叉树的深度为根节点到最远叶子节点的最长路径上的节点数。说明: 叶子节点是指没有子节点的节点。示例: 给定二叉树 [3,9,20,null,null,15,7], 3 / \ 9 20 / \ 15 7返回它的最大深度 3 。Python代码实现: 思路: 1.先判断...原创 2018-08-23 20:01:25 · 274 阅读 · 0 评论 -
leetcode(23)-----Contains Duplicate II
219. 存在重复元素 II Given an array of integers and an integer k, find out whether there are two distinct indices i and j in the array such that nums[i] = nums[j] and the absolute difference between i and ...原创 2018-08-20 23:19:52 · 205 阅读 · 0 评论 -
leetcode(44)-----227. Basic Calculator II
Implement a basic calculator to evaluate a simple expression string.The expression string contains only non-negative integers, +, -, *, / operators and empty spaces . The integer division should tru...原创 2018-08-30 22:17:32 · 231 阅读 · 0 评论 -
leetcode(22)-----Contains Duplicate I
217. 存在重复元素 Given an array of integers, find if the array contains any duplicates.Your function should return true if any value appears at least twice in the array, and it should return false if ev...原创 2018-08-20 19:50:25 · 214 阅读 · 0 评论 -
leetcode(41)------674. 最长连续递增序列
这里写链接内容 给定一个未经排序的整数数组,找到最长且连续的的递增序列。示例 1:输入: [1,3,5,4,7]输出: 3解释: 最长连续递增序列是 [1,3,5], 长度为3。尽管 [1,3,5,7] 也是升序的子序列, 但它不是连续的,因为5和7在原数组里被4隔开。示例 2:输入: [2,2,2,2,2]输出: 1解释: 最长连续递增序列是 [2], 长度为...原创 2018-08-29 20:09:32 · 277 阅读 · 0 评论 -
leetcode(28)------ 颠倒二进制位
190. 颠倒二进制位 颠倒给定的 32 位无符号整数的二进制位。示例:输入: 43261596输出: 964176192解释: 43261596 的二进制表示形式为 00000010100101000001111010011100 , 返回 964176192,其二进制表示形式为 00111001011110000010100101000000 。Python...原创 2018-08-21 17:27:40 · 468 阅读 · 0 评论 -
leetcode(42)-----673. 最长递增子序列的个数
673.Number of Longest Increasing Subsequence—最长递增子序列的个数Given an unsorted array of integers, find the number of longest increasing subsequence. Example 1:Input: [1,3,5,4,7]Output: 2Explanation:...原创 2018-08-29 21:51:06 · 968 阅读 · 0 评论 -
leetcode(55)-----8. 字符串转整数 (atoi)
8. 字符串转整数 (atoi)实现 atoi,将字符串转为整数。在找到第一个非空字符之前,需要移除掉字符串中的空格字符。如果第一个非空字符是正号或负号,选取该符号,并将其与后面尽可能多的连续的数字组合起来,这部分字符即为整数的值。如果第一个非空字符是数字,则直接将其与之后连续的数字字符组合起来,形成整数。字符串可以在形成整数的字符后面包括多余的字符,这些字符可以被忽略,它们对于函数没...原创 2018-09-11 09:36:03 · 185 阅读 · 0 评论 -
leetcode(57)-----204. 计数质数
204. 计数质数统计所有小于非负整数 n 的质数的数量。示例:输入: 10输出: 4解释: 小于 10 的质数一共有 4 个, 它们是 2, 3, 5, 7 。思路分析:1.双重循环,时间复杂度是O(n²),提交显示时间超时class Solution: def countPrimes(self, n): """ :type n: in...原创 2018-09-19 11:01:22 · 229 阅读 · 0 评论 -
leetcode(54)-----38. 报数
38. 报数报数序列是指一个整数序列,按照其中的整数的顺序进行报数,得到下一个数。其前五项如下:1. 12. 113. 214. 12115. 1112211 被读作 “one 1” (“一个一”) , 即 11。 11 被读作 “two 1s” (“两个一”), 即 21。 21 被读作 “one 2”, “one 1” (”...原创 2018-09-10 17:58:54 · 234 阅读 · 0 评论 -
leetcode(53)-----125. 验证回文串
给定一个字符串,验证它是否是回文串,只考虑字母和数字字符,可以忽略字母的大小写。说明:本题中,我们将空字符串定义为有效的回文串。示例 1:输入: "A man, a plan, a canal: Panama"输出: true示例 2:输入: "race a car"输出: false思路分析: 1.提取字符串中的字母数字 2.判断你是否是回文数Py...原创 2018-09-10 17:14:33 · 220 阅读 · 0 评论 -
leetcode(52)-----242. 有效的字母异位词
242. 有效的字母异位词给定两个字符串 s 和 t ,编写一个函数来判断 t 是否是 s 的一个字母异位词。示例 1:输入: s = "anagram", t = "nagaram"输出: true示例 2:输入: s = "rat", t = "car"输出: false说明: 你可以假设字符串只包含小写字母。进阶:原创 2018-09-10 11:56:17 · 377 阅读 · 0 评论 -
leetcode(56)-----412. Fizz Buzz
Fizz Buzz写一个程序,输出从 1 到 n 数字的字符串表示。如果 n 是3的倍数,输出“Fizz”;如果 n 是5的倍数,输出“Buzz”;如果 n 同时是3和5的倍数,输出 “FizzBuzz”。示例:n = 15,返回:[ "1", "2", "Fizz", "4", &q原创 2018-09-17 09:57:52 · 247 阅读 · 0 评论 -
leetcode(51)-----387. 字符串中的第一个唯一字符
387. 字符串中的第一个唯一字符给定一个字符串,找到它的第一个不重复的字符,并返回它的索引。如果不存在,则返回 -1。案例:s = "leetcode"返回 0.s = "loveleetcode",返回 2.注意事项:可以假定该字符串只包含小写字母。Python代码实现: 判断第一个字符是否唯一,不唯一就全删光,继续判断第一个字符,直到找出, 如果没有就...原创 2018-09-08 22:16:51 · 546 阅读 · 0 评论 -
leetcode(50)-----转置矩阵
867. 转置矩阵给定一个矩阵 A, 返回 A 的转置矩阵。矩阵的转置是指将矩阵的主对角线翻转,交换矩阵的行索引与列索引。示例 1:输入:[[1,2,3],[4,5,6],[7,8,9]]输出:[[1,4,7],[2,5,8],[3,6,9]]示例 2:输入:[[1,2,3],[4,5,6]]输出:[[1,4],[2,5],[3,6]]提示:1 <= ...原创 2018-09-08 20:38:21 · 234 阅读 · 0 评论 -
一行代码搞定矩阵旋转-----Python
矩阵旋转在leetcode上刷到一道 旋转图像 的题,自己苦思冥想未果之后去百度搜索了一下,被 一个 Python答案给惊到了。。。原题链接: 点击进入Python代码实现: def rotate(self, matrix): matrix[:] = map(list,zip(*matrix[::-1]))一行解决这道题...原创 2018-09-08 20:11:08 · 6254 阅读 · 1 评论 -
leetcode(49)-----48.旋转图像
在leetcode刷题中,在第48题刷到了 旋转图像 给定一个 n × n 的二维矩阵表示一个图像。将图像顺时针旋转 90 度。说明:你必须在原地旋转图像,这意味着你需要直接修改输入的二维矩阵。请不要使用另一个矩阵来旋转图像。示例 1:给定 matrix = [ [1,2,3], [4,5,6], [7,8,9]],原地旋转输入矩阵,使其变为:[ ...原创 2018-09-07 22:25:54 · 206 阅读 · 0 评论 -
leetcode(48)-----283. Move Zeroes
283. 移动零 Given an array nums, write a function to move all 0’s to the end of it while maintaining the relative order of the non-zero elements.Example:Input: [0,1,0,3,12]Output: [1,3,12,0,0]N...原创 2018-09-07 19:59:28 · 278 阅读 · 0 评论 -
leetcode(47)-----36.有效的数独
36. 有效的数独这个我是借鉴别人的:思路分析:先弄3 个 列表生成式,一个表示数独的每一行,一个表示数独的每一列,另一个表示每个3*3的矩阵。 如果每个数都不与它所在的每一行,每一列,所在矩阵中的 数 重复,就是一个正常的数独。 否则只要重复一个就不是。Python代码实现:class Solution: def isValidSudoku(self, b...原创 2018-09-07 19:06:12 · 322 阅读 · 0 评论 -
leetcode(14)------Remove Linked List Elements
203.删除链表中的节点 Remove all elements from a linked list of integers that have value val.Example:Input: 1->2->6->3->4->5->6, val = 6Output: 1->2->3->4-&原创 2018-08-15 19:24:07 · 190 阅读 · 0 评论 -
leetcode(3)-----7. Reverse Integer
反转整数 Given a 32-bit signed integer, reverse digits of an integer.Example 1:Input: 123Output: 321Example 2:Input: -123Output: -321Example 2:Input: 120Output: 21Note: Assume we...原创 2018-08-08 21:02:23 · 184 阅读 · 0 评论 -
leetcode(17)------Maximum Subarray
53. 最大子序和 Given an integer array nums, find the contiguous subarray (containing at least one number) which has the largest sum and return its sum.Example:Input: [-2,1,-3,4,-1,2,1,-5,4],Output:...原创 2018-08-16 19:47:21 · 211 阅读 · 1 评论 -
leetcode(9)-----Merge Sorted Array
合并两个有序数组 Given two sorted integer arrays nums1 and nums2, merge nums2 into nums1 as one sorted array.Note:The number of elements initialized in nums1 and nums2 are m and n respectively.you may ...原创 2018-08-13 21:59:21 · 292 阅读 · 0 评论 -
leetcode(8)-----Merge Two Sorted Lists
合并两个有序链表Merge two sorted linked lists and return it as a new list. The new list should be made by splicing together the nodes of the first two lists.Example:Input: 1->2->4, 1->3->4...原创 2018-08-13 19:48:15 · 206 阅读 · 0 评论 -
leetcode(4)-----Palindrome Number
回文数Determine whether an integer is a palindrome. An integer is a palindrome when it reads the same backward as forward. Example 1:Input: 121Output: trueExample 2:Input: -121Output: false...原创 2018-08-08 21:43:37 · 172 阅读 · 0 评论 -
leetcode(16)------First Bad Version
278. 第一个错误的版本 You are a product manager and currently leading a team to develop a new product. Unfortunately, the latest version of your product fails the quality check. Since each version is develop...原创 2018-08-15 20:07:40 · 214 阅读 · 1 评论 -
leetcode(15)-----Search Insert Position
35. 搜索插入位置 给定一个排序数组和一个目标值,在数组中找到目标值,并返回其索引。如果目标值不存在于数组中,返回它将会被按顺序插入的位置。你可以假设数组中无重复元素。示例 1:输入: [1,3,5,6], 5输出: 2示例 2:输入: [1,3,5,6], 2输出: 1示例 3:输入: [1,3,5,6], 7输出: 4示例 4:输入...原创 2018-08-15 19:41:52 · 178 阅读 · 0 评论 -
leetcode(13)-----Remove Element
27. 移除元素 Given an array nums and a value val, remove all instances of that value in-place and return the new length.Do not allocate extra space for another array, you must do this by modifying the ...原创 2018-08-15 18:59:02 · 188 阅读 · 0 评论 -
leetcode(2)------70.Climbing Stairs
爬楼梯 You are climbing a stair case. It takes n steps to reach to the top.Each time you can either climb 1 or 2 steps. In how many distinct ways can you climb to the top? Note: Given n will be a pos...原创 2018-08-08 10:25:58 · 190 阅读 · 0 评论 -
leetcode(1)------1. Two Sum
两数之和Given an array of integers, return indices of the two numbers such that they add up to a specific target.You may assume that each input would have exactly one solution, and you may not use the...原创 2018-08-08 10:25:09 · 188 阅读 · 0 评论 -
leetcode(7)-----Longest Common Prefix
最长公共前缀 编写一个函数来查找字符串数组中的最长公共前缀。如果不存在公共前缀,返回空字符串 “”。 示例 1:输入: ["flower","flow","flight"]输出: &am原创 2018-08-11 21:07:50 · 185 阅读 · 0 评论