随笔分类 - LeetCode
摘要:这道题答案采用了双指针,太优雅了。 先看下代码: 1 class Solution { 2 public int removeDuplicates(int[] nums) { 3 if (nums.length == 0) return 0; 4 int i = 0; 5 for (int j =
阅读全文
摘要:主要是用栈的思想,c++里有栈的模板,可以直接调用。 思想:对字符每一项检查,如果是左括号就入栈,如果是右括号,先检查是否栈空,如果 栈空,肯定不行,接下来检查左右括号是否对应,入如果对应,就出栈;最后循环完检查 栈是否为空,如果非空,说明还有没有与之匹配的左括号,反之,则正好匹配完。 class
阅读全文
摘要:最长公共前缀是一个经典的问题,编写一个函数来查找字符串数组中的最长公共前缀。 如果不存在公共前缀,返回空字符串 ""。 比如: 输入: ["flower","flow","flight"] 输出: "fl" 输入: ["dog","racecar","car"] 输出: ""这里我采用的是暴力破解的
阅读全文
摘要:1.首先应该将负数和个位数为0的数排除。 2.我的方法是定义一个比较大的数组来存储每个数字,然后进行比较每个数字,但是这种方法所占用的空间比较大,官方给的答案就比较方便了。 先上图: 看代码: 1 class Solution { 2 public boolean isPalindrome(int
阅读全文
摘要:这道题是简单题的一种,其实难点主要在于判断是否溢出,如果溢出的话,那么他实际存储的值是就是他的后32位的数,具体可以另一篇关于他的介绍。 那么如何判断是否溢出呢? 我们用j表示每次除以10的余数,m表示新的数,如果在某次运算中数据溢出,那么m将不是反转后的数,那么他此时对10求余,便与刚刚求得的j值
阅读全文

浙公网安备 33010602011771号