zoukankan      html  css  js  c++  java
  • 2016/10/28 很久没更了 leetcode解题 3sum

    15. 3Sum

    Given an array S of n integers, are there elements abc in S such that a + b + c = 0? Find all unique triplets in the array which gives the sum of zero.

    Note: The solution set must not contain duplicate triplets.

    For example, given array S = [-1, 0, 1, 2, -1, -4],
    
    A solution set is:
    [
      [-1, 0, 1],
      [-1, -1, 2]
    ]
    

    这道题是3sumcloset的简化版 给出一个数组s 包含n个数 找出三个数为零的所有例子 并且不能重复  用上一题的思路 其实就是target=0

    这道题不像closet 这道题需要所有的组合 所以肯定不能像之前3ms的解法一次遍历如果直接找到返回节省时间 这道题应该是需要遍历所有不重复的组合

    还是老规矩 首先判断数组是否为空 并且长度是否大于等于三 不符合直接返回空

    仍然对数组进行排序 更好的找结果 

    接下来还是跟closet解法类似

    附上第一次submit结果

    我的天 0000的情况为什么我的判断代码没起作用if  nums[i]==nums[i-1]应该是直接continue的 在html页面里调试不了 看不出来哪里有问题 无奈开eclipse设置断点看看

    我靠 这里循环了两次 并不是我的continue没用   添加完后忘记对left和right做操作了 

    问题解决  在对left右移动和right左移动时也不要忘了判断left和right大小 以及是否重复

  • 相关阅读:
    ASP.NET MVC Controller向View传值的几种方式
    ASP.NET MVC View向Controller提交数据
    ASP.NET MVC 让@Html.DropDownList显示默认值
    Sublime Cssrem rem自动转换
    Sublime install package插件安装
    HTML+CSS 清除浮动三种方式
    Sublime View In Browser
    Sublime html <head>自动补全
    Ubuntu编译源码为deb
    Pycharm安装激活
  • 原文地址:https://www.cnblogs.com/Mrjie/p/6008081.html
Copyright © 2011-2022 走看看