![](https://img-blog.csdnimg.cn/20201014180756724.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
LeetCode编程题
LeetCode编程题总结
/*注释不编译*/
这个作者很懒,什么都没留下…
展开
-
7、整数反转
7、分析:我们通过除10取余的方法进行整数反转。需要注意的是整形溢出的情况代码实现class Solution { public int reverse(int x) { int end = 0; while (x != 0) { int pop = x % 10; x /= 10; ...原创 2020-03-23 12:40:46 · 90 阅读 · 0 评论 -
3. 无重复字符的最长子串
采用“滑窗”的方法解决此问题代码实现class Solution { public int lengthOfLongestSubstring(String s) { if (s.length()==0) { return 0; } if (s.length() == 1) { retu...原创 2020-03-16 18:08:00 · 85 阅读 · 0 评论 -
1、两数之和
代码实现class Solution { public int[] twoSum(int[] nums, int target) { int[] answer=new int[2]; for(int i=0;i<nums.length;i++){ for(int j=i+1;j<nums.length;j++){ ...原创 2020-03-16 12:38:26 · 71 阅读 · 0 评论 -
面试题 01.06. 字符串压缩
分析:这道题考察的是String类中的substring()、length()、charAt()方法,我们需要建立一个新的字符串来存压缩字符串。总体来说比较简单。代码实现class Solution { public String compressString(String S) { if(S.length()==0){ return S;...原创 2020-03-16 12:02:26 · 98 阅读 · 0 评论 -
121、买股票最佳时机
121、这里我们需要一个最大差价maxMoney,一个最低价格minPrice首先判断当前价格是不是最低价格,如果不是最低价格就改为当前价格然后判断当前价格和最低价格的差价是否比最大差价大,如果大最大差价就改为当前差价代码实现class Solution { public int maxProfit(int[] prices) { int minPrice ...原创 2020-03-09 19:53:26 · 323 阅读 · 0 评论 -
26、删除数组中的重复项
26、代码实现class Solution { public int removeDuplicates(int[] nums) { if(nums.length==0){ return 0; } if(nums.length==1){ return 1; } ...原创 2020-03-09 12:49:20 · 100 阅读 · 0 评论 -
29.两数相除
29、代码实现class Solution { public int divide(int dividend, int divisor) { boolean sign = (dividend > 0) ^ (divisor > 0); int result = 0; if(dividend>0) { ...原创 2020-03-02 20:08:44 · 81 阅读 · 0 评论 -
28.实现strStr()
28、分析对原字符串进行遍历即可代码实现class Solution { public int strStr(String haystack, String needle) { if(needle.length()==0){ return 0; } if(haystack.length()<needl...原创 2020-03-02 18:36:00 · 77 阅读 · 0 评论 -
27.移除元素
27、分析本题采用两个指针以左指针为准,进行交换代码实现class Solution { public int removeElement(int[] nums, int val) { int lift=0; int right=nums.length-1; while(lift<=right){ ...原创 2020-03-02 17:28:49 · 64 阅读 · 0 评论 -
20.有效的括号
20、分析:这道题括号与我们学的栈相吻合,先进后出,判断进来的元素和她前面一个元素是否匹配,如果不匹配就让下一个元素进栈;如果匹配就将这两个元素弹栈,最终如果栈为空就说明括号符合要求。代码实现class Solution { public boolean isValid(String s) { if(s.length()==0){ re...原创 2020-03-02 16:35:02 · 58 阅读 · 0 评论 -
面试题66. 构建乘积数组
面试题66. 构建乘积数组分析:1、当数组长度为0时直接输出该数组2、创建三个数组:第一个数组存原数组从左至右在某个位置前面所有数的积、第二个数组存从右至左原数组某个位置后面所有数的积、第三个数组存最终的数组代码class Solution { public int[] constructArr(int[] a) { if(a.length==0){ ...原创 2020-02-23 16:36:56 · 123 阅读 · 0 评论 -
561. 数组拆分 I
数组拆分 I分析1、数组中一定有元素2、较小数之和最大就是将数组排序之后从角标0开始的所有偶数角标元素之和class Solution { public int arrayPairSum(int[] nums) { Arrays.sort(nums); int sum=0; for(int i=0;i<nums.len...原创 2020-02-23 15:23:55 · 78 阅读 · 0 评论 -
941. 有效的山脉数组
有效的山脉数组分析:1、山脉数组是先增后减的数组2、数组长度为0,1,2时都不可能是山脉数组class Solution { public boolean validMountainArray(int[] A) { if(A.length==0||A.length==1||A.length==2){ return false; ...原创 2020-02-23 15:05:26 · 115 阅读 · 0 评论 -
1266. 访问所有点的最小时间
1266. 访问所有点的最小时间题目分析:1、points是一个二维数组用来存储2、二维数组长度为n,即点的个数3、当两个点的水平距离和竖直距离相等时,所用时间就是水平距离长度4、当两个点的水平距离和竖直距离不相等时,所用时间就是两个距离中长的那个代码:class Solution { public static void main(String[] args){ int...原创 2020-02-23 11:40:15 · 97 阅读 · 0 评论