leetcode
鬼王呵
这个作者很懒,什么都没留下…
展开
-
剑指Offer 不用加减乘除做加法
/** * 不用加减乘除做加法 * * 写一个函数,求两个整数之和,要求在函数体内不得使用+、-、*、/四则运算符号。 */public class JZ048AddSolution { public static int Add(int num1,int num2) { if(num1 == 0){//表示进位的值为零才可以 return num2; } int yihuo = num1 ^ num2;//第..原创 2020-11-28 11:11:22 · 62 阅读 · 0 评论 -
leetcode(Two Sum)
Title:Two Sum 1Difficulty:Easy原题leetcode地址:https://leetcode.com/problems/two-sum/ 下面主要是3种解法:1. 暴力法,时间&空间复杂度如下:时间复杂度:O(n^2),两层for循环,每一层for循环再没有找到对应的target时,都是要执行n次。空间复杂度:O(1),申请了一...原创 2018-11-18 22:18:07 · 108 阅读 · 0 评论 -
leetcode (Remove Duplicates from Sorted Array)
Title: Remove Duplicates from Sorted Array 26Difficulty:Easy原题leetcode地址:https://leetcode.com/problems/remove-duplicates-from-sorted-array/ 1. 采用双引用(指针),时间&空间复杂度如下:时间复杂度:O(n),一层while循...原创 2018-11-18 22:31:01 · 123 阅读 · 0 评论 -
leetcode (Remove Element)
Title: Remove Element 27Difficulty:Easy原题leetcode地址:https://leetcode.com/problems/remove-element/ 本题的解法与上题26 (Remove Diplicates from Sorted Array)的解法一样,采用双指针。1. 采用双引用(指针),时间&空间复杂度如下:...原创 2018-11-18 22:54:54 · 93 阅读 · 0 评论 -
leetcode (Pascal's Triangle)
Title: Merge Stored Array 118Difficulty:Easy原题leetcode地址:https://leetcode.com/problems/pascals-triangle/ 本题很简单,需要注意的是List与ArrayList或者LinkedList的关系,同样需要很清楚的了解到list的get方法。1. 注意点见代码中的注释,时间&a...原创 2018-11-21 10:48:00 · 179 阅读 · 0 评论 -
leetcode (Pascal's Triangle II)
Title: Merge Stored Array 119Difficulty:Easy原题leetcode地址:https://leetcode.com/problems/pascals-triangle-ii/ 本题很简单,是上一题118的几个简单“升级”。1. 注意点见代码中的注释,时间&空间复杂度如下:时间复杂度:O(n^2),两层for循环的遍历。...原创 2018-11-21 11:20:19 · 221 阅读 · 0 评论 -
leetcode (Best Time to Buy and Sell Stock)
Title: Merge Stored Array 121Difficulty:Easy原题leetcode地址:https://leetcode.com/problems/best-time-to-buy-and-sell-stock/ 这题需要理解意思,将prices作为股票交易的价格,是可以买也可以是卖的。1. 注意点见代码中的注释,时间&空间复杂度如下:...原创 2018-11-21 16:13:06 · 110 阅读 · 0 评论 -
leetcode (Best Time to Buy and Sell Stock II)
Title: Merge Stored Array 122Difficulty:Easy原题leetcode地址:https://leetcode.com/problems/best-time-to-buy-and-sell-stock-ii/ 这题时上一题121稍微的改变,因为不限制买卖,就可以表示在同一天可以以同样的价格买进卖出1. 注意点见代码中的注释,时间&...原创 2018-11-21 16:58:16 · 123 阅读 · 0 评论 -
leetcode (Two Sum II - Input array is sorted)
Title: Merge Stored Array 167Difficulty:Easy原题leetcode地址:https://leetcode.com/problems/two-sum-ii-input-array-is-sorted/ 采用二分法(数组已经是排序的)1. 时间&空间复杂度如下:时间复杂度:O(logn)。空间复杂度:O(1),申请了两...原创 2018-11-22 12:12:02 · 112 阅读 · 0 评论 -
leetcode (Search Insert Position)
Title: Search Insert Position 35Difficulty:Easy原题leetcode地址:https://leetcode.com/problems/search-insert-position/ 本题比较简单,需要开始时想到二分查找。下面给出两种基本的解法(一般解法和二分查找)1. 一般解法,时间&空间复杂度如下:时间复杂度:O...原创 2018-11-20 11:13:21 · 111 阅读 · 0 评论 -
leetCode (Maximum Subarray)
Title: Remove Element 53Difficulty:Easy原题leetcode地址:https://leetcode.com/problems/maximum-subarray/ 1. 具体说明详见代码中的注释,时间&空间复杂度如下:时间复杂度:O(n),一层while循环,遍历的是数组的长度。空间复杂度:O(1),没有申请额外的空间。...原创 2018-11-20 11:12:46 · 100 阅读 · 0 评论 -
leetcode (Missing Number)
Title:Missing Number 268Difficulty:Easy原题leetcode地址:https://leetcode.com/problems/missing-number/ 1. 申请了额外的空间,在新申请的空间中将nums重新排序,然后找到当前位置上的数与位置的值不同(类似于排序)时间复杂度:O(n),两次for循环,但都是一层,遍历整个数组的长度。...原创 2018-11-24 12:28:49 · 128 阅读 · 0 评论 -
leetcode (Move Zeroes)
Title:Missing Number 283Difficulty:Easy原题leetcode地址:https://leetcode.com/problems/move-zeroes/ 1. 反其道行之时间复杂度:O(n),三次for循环,但都是一层,最长的for循环需要遍历整个数组的长度。空间复杂度:O(1),没有申请额外。 /** * 反其...原创 2018-11-24 12:52:41 · 105 阅读 · 0 评论 -
leetcode (Plus One)
Title: Plus One 66Difficulty:Easy原题leetcode地址:https://leetcode.com/problems/plus-one/submissions/ 1. 具体说明详见代码中的注释,时间&空间复杂度如下:时间复杂度:O(n),一层while循环,遍历的是数组的长度。空间复杂度:O(n),申请了n+1的空间。 ...原创 2018-11-20 11:12:15 · 111 阅读 · 0 评论 -
leetcode (Majority Element)
Title: Majority Element 169Difficulty:Easy原题leetcode地址:https://leetcode.com/problems/majority-element/ 1. 采用HashMap,时间&空间复杂度如下:时间复杂度:O(n),一层for循环遍历,最长遍历整个数组的长度。空间复杂度:O(n),申请了一个HashM...原创 2018-11-23 10:01:28 · 141 阅读 · 0 评论 -
leetcode (Rotate Array)
Title:Rotate Array 189Difficulty:Easy原题leetcode地址:https://leetcode.com/problems/rotate-array/ 1. 详细讲解见代码注释,时间&空间复杂度如下:时间复杂度:O(n),最长需要遍历整个数组的长度。空间复杂度:O(1),没有额外申请空间。 /** * ...原创 2018-11-23 10:38:11 · 126 阅读 · 0 评论 -
leetcode (Merge Sorted Array)
Title: Merge Stored Array 88Difficulty:Easy原题leetcode地址:https://leetcode.com/problems/merge-sorted-array/submissions/ 本题很简单1. 注意点见代码中的注释,时间&空间复杂度如下:时间复杂度:O(m),一层for循环的遍历,遍历最长的为nums1...原创 2018-11-20 11:58:11 · 112 阅读 · 0 评论 -
leetcode (Contains Duplicate)
Title:Contains Duplicate 217Difficulty:Easy原题leetcode地址:https://leetcode.com/problems/contains-duplicate/ 1. 采用HashMap的key的唯一性,时间&空间复杂度如下:时间复杂度:O(n),一次for循环,遍历整个数组的长度。空间复杂度:O(n),申请整个...原创 2018-11-23 11:22:54 · 107 阅读 · 0 评论 -
leetcode (Third Maximum Number)
Title:Third Maximum Number 414Difficulty:Easy原题leetcode地址:https://leetcode.com/problems/third-maximum-number/ 1. 设置最大值,第二大值,第三大值(有第三大的值,设置flag作为标记),需要注意Integer.MIN_VALUE作为边界值。时间复杂度:O(n),三次...原创 2018-11-25 23:25:41 · 96 阅读 · 0 评论 -
leetcode (Find All Numbers Disappeared in an Array)
Title:Find All Numbers Disappeared in an Array) 448Difficulty:Easy原题leetcode地址:https://leetcode.com/problems/find-all-numbers-disappeared-in-an-array/ 1. 见代码中的注释讲解时间复杂度:O(n),两次for循环,但都是一层,...原创 2018-11-25 23:25:06 · 129 阅读 · 0 评论 -
leetcode (Contains Duplicate II)
Title:Contains Duplicate II 219Difficulty:Easy原题leetcode地址:https://leetcode.com/problems/contains-duplicate-ii/ 1. 采用HashMap,KEY存放数组中的数,Value存放数组中的下标,注意,HashMap中存放之前已经存在的key(value不一样),会重新更新同...原创 2018-11-23 15:21:37 · 118 阅读 · 0 评论 -
leetcode (Max Consecutive Ones)
Title:Max Consecutive Ones 485Difficulty:Easy原题leetcode地址:https://leetcode.com/problems/max-consecutive-ones/ 1. 将每次连续遍历到1,都放入list中,同时对连续遍历到1后作加加操作,最后遍历list,找到最大的值。这样的可能性list会超级大,最大会是数组长度的平...原创 2018-11-26 10:53:08 · 122 阅读 · 0 评论 -
leetcode (Degree of an Array)
Title:Longest Continuous Increasing Subsequence 697Difficulty:Easy原题leetcode地址:https://leetcode.com/problems/degree-of-an-array/ 1. Map的Key的唯一性,Value不断的更新时间复杂度:O(n),两次一层for循环,遍历整个数组。空间...原创 2018-12-02 09:49:57 · 145 阅读 · 0 评论 -
leetcode (Magic Squares In Grid)
Title:Magic Squares In Grid 840Difficulty:Easy原题leetcode地址:https://leetcode.com/problems/magic-squares-in-grid/ 1. 基本方法,主要中间的数值必须为5时间复杂度:O(n^2),嵌套for循环,需要遍历整个数组。空间复杂度:O(n),申请长度为16的数组。...原创 2018-12-04 11:08:35 · 145 阅读 · 0 评论 -
leetcode (Image Smoother)
Title:Image Smoother 661Difficulty:Easy原题leetcode地址:https://leetcode.com/problems/image-smoother/ 1. 注意有些数的周围没有8个数(3个或者5个的)时间复杂度:O(n^2),嵌套for循环。空间复杂度:O(1),没有申请额外的空间。 /** * 注...原创 2018-11-29 22:54:34 · 137 阅读 · 0 评论 -
leetcode (Non-decreasing Array)
Title:Non-decreasing Array 665Difficulty:Easy原题leetcode地址:https://leetcode.com/problems/non-decreasing-array/ 1. 注意下标为1的数; 注意当前的数比后面第二个数都大,将当前的数变小(先判断);前的数比后面一个数大,将当前的数变大时间复杂度:O(n),...原创 2018-11-29 23:01:18 · 115 阅读 · 0 评论 -
leetcode (K-diff Pairs in an Array)
Title:K-diff Pairs in an Array 532Difficulty:Easy原题leetcode地址:https://leetcode.com/problems/k-diff-pairs-in-an-array/ 1. 首先排序,然后嵌套循环遍历数组,注意(a.如果找到一对,就跳出本次循环(内循环),b.跳过重复的数)时间复杂度:O(n^2),两层循...原创 2018-11-26 23:23:53 · 119 阅读 · 0 评论 -
leetcode (Array Partition I)
Title:K-diff Pairs in an Array 561Difficulty:Easy原题leetcode地址:https://leetcode.com/problems/array-partition-i/ 1. 排序,然后每两个数一对,取较小的(也就是前面一个)想加就是最大值时间复杂度:O(nlogn),采用了Java默认的排序(默认的排序对数的多少采用不...原创 2018-11-27 09:21:29 · 163 阅读 · 0 评论 -
leetcode (Reshape the Matrix)
Title:Reshape the Matrix 566Difficulty:Easy原题leetcode地址:https://leetcode.com/problems/array-partition-i/ 1. 采用了一位数组作为中间的过度,先将原来的二维数组存储到过度的一维数组中,然后将过度的一维数组存储到二维数组中时间复杂度:O(n^2),嵌套遍历。空间复杂度...原创 2018-11-27 09:50:29 · 127 阅读 · 0 评论 -
leetcode (1-bit and 2-bit Characters)
Title:1-bit and 2-bit Characters 717Difficulty:Easy原题leetcode地址:https://leetcode.com/problems/1-bit-and-2-bit-characters/ 1. 遍历数组,如果是1,则加2,如果是0,则加1;时间复杂度:O(n),一次一层for循环,需要遍历整个数组。空间复杂度:O...原创 2018-12-02 18:45:57 · 129 阅读 · 0 评论 -
leetcode (Find Pivot Index)
Title:Find Pivot Index 724Difficulty:Easy原题leetcode地址:https://leetcode.com/problems/find-pivot-index/ 1. 那么左边的和的2倍等于总和减去当前的值时间复杂度:O(n),两次一层for循环,需要遍历整个数组。空间复杂度:O(1),没有申请额外的空间。 /**...原创 2018-12-02 20:08:22 · 124 阅读 · 0 评论 -
leetcode (Min Cost Climbing Stairs)
Title:Longest Continuous Increasing Subsequence 746Difficulty:Easy原题leetcode地址:https://leetcode.com/problems/min-cost-climbing-stairs/ 1. 从后往前遍历,将每一次或者两次的值进行对比,取较小的值想加时间复杂度:O(n),一次一层for循...原创 2018-12-02 21:04:22 · 118 阅读 · 0 评论 -
leetcode (Largest Number At Least Twice of Others)
Title:Largest Number At Least Twice of Others 747Difficulty:Easy原题leetcode地址:https://leetcode.com/problems/largest-number-at-least-twice-of-others/ 1. 找到最大值并记录其下标,找到第二大值时间复杂度:O(n),两次一层for循...原创 2018-12-02 21:33:25 · 110 阅读 · 0 评论 -
leetcode (Shortest Unsorted Continuous Subarray)
Title:Shortest Unsorted Continuous Subarray 581Difficulty:Easy原题leetcode地址:https://leetcode.com/problems/shortest-unsorted-continuous-subarray/ 1. 复制nums数组,然后排序,进行对比。时间复杂度:O(n)。空间复杂度:O(...原创 2018-11-27 17:50:03 · 108 阅读 · 0 评论 -
leetcode (Can Place Flowers)
Title:Can Place Flowers 605Difficulty:Easy原题leetcode地址:https://leetcode.com/problems/can-place-flowers/ 1. 判断当前位置的前一个数和后一个数的是0还是1,注意第一个数和最后一个数时间复杂度:O(n),一次一层for循环,最长遍历整个数组的长度。空间复杂度:O(n)...原创 2018-11-27 22:47:25 · 161 阅读 · 0 评论 -
leetcode (Maximum Product of Three Numbers)
Title:Maximum Product of Three Numbers 605Difficulty:Easy原题leetcode地址:https://leetcode.com/problems/can-place-flowers/ 1. 注意两个负数的乘积为正数时间复杂度:O(n),一次一层for循环,最长遍历整个数组的长度。空间复杂度:O(1),没有申请空间。...原创 2018-11-28 09:31:53 · 136 阅读 · 0 评论 -
leetcode (Maximum Average Subarray I)
Title:Maximum Average Subarray I 643Difficulty:Easy原题leetcode地址:https://leetcode.com/problems/maximum-average-subarray-i/ 1.申请了一个数组,将每连续的k个数想加后存放,然后找到这个数组中最大的数时间复杂度:O(n^2),嵌套for循环。空间复杂度...原创 2018-11-28 10:12:37 · 145 阅读 · 0 评论 -
leetcode (Longest Continuous Increasing Subsequence)
Title:Longest Continuous Increasing Subsequence 674Difficulty:Easy原题leetcode地址:https://leetcode.com/problems/longest-continuous-increasing-subsequence/ 1. 后面的数大每次加加,否则为1,每次都比较下大小时间复杂度:O(...原创 2018-12-01 22:26:54 · 119 阅读 · 0 评论 -
leetcode (Valid Mountain Array)
Title:Valid Mountain Array 941Difficulty:Easy原题leetcode地址:https://leetcode.com/problems/valid-mountain-array/ 1. 从左到右递增直到一个较小的数,对这个较大的位置进行判断,然后依次递减时间复杂度:O(n),两次一层while循环,需要遍历整个数组。空间复杂度:O...原创 2018-12-07 23:15:57 · 110 阅读 · 0 评论 -
leetcode (Roman to Integer)
Title:Roman to Integer 13Difficulty:Easy原题leetcode地址:https://leetcode.com/problems/roman-to-integer/ 1. 从后到前开始遍历,前面的数小于当前数,就减去前面的数,否则就相加时间复杂度:O(n),一次一层for循环,需要遍历整个数组。空间复杂度:O(n),将string转...原创 2018-12-07 23:37:09 · 111 阅读 · 0 评论