标题:代码没有输出结果,求解答
取消只看楼主
so_closely
Rank: 1
等 级:新手上路
帖 子:2
专家分:0
注 册:2012-7-20
结帖率:100%
已结贴  问题点数:20 回复次数:0 
代码没有输出结果,求解答
这个是leetcode第15题3sum。找出三个数和为0已经解决了。
但问题是,我想在main函数中写用于测试threeSum函数的代码
即能实现通过键盘手动输入一串数用于验证,来代替在main函数中定义数组。
另外不知道如何输出threeSum中返回的List<List<Integer>> 类型的ret结果。

能解释下List<List<Integer>> 这个泛型吗,我自己最多只看到List<Integer>。谢谢


import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;


public class leetCode15 {
    List<List<Integer>> ret = new ArrayList<List<Integer>>();
   
    public void main(String[] args) {
        // TODO Auto-generated method stub
        
        int[] test1=new int[]{-1,0,1,2,-1,-4};
        
        ret=threeSum(test1);
        ret.forEach(ele -> System.out.println(ele));
        
    }
    //List<Integer>:list只能接收Integer的对象.
    public  List<List<Integer>> threeSum(int[] nums) {
        if(nums==null ||nums.length<3)
            return ret;
        
        Arrays.sort(nums);
        int len=nums.length;
        for(int i=0;i<len-2;i++){
            if(i>0 &&nums[i]==nums[i-1])
                continue;
            find(nums,nums[i],i+1,len-1);//寻找两个数和这个数加起来和为0
        }
        return ret;
    }
    public  void find(int[] nums,int target,int start,int end){
        int l=start;
        int r=end;
        while(l<r){
            if(nums[l]+nums[r]+target==0){
                List<Integer> ans = new ArrayList<Integer>();
                ans.add(target);
                ans.add(nums[l]);
                ans.add(nums[r]);
                ret.add(ans);
                while(l<r &&nums[l]==nums[l+1]) l++;//去重
                while(l<r  &&  nums[r]==nums[r-1]) r--;//去重
                l++;
                r--;
            }
            else if (nums[l]+nums[r]+target<0){            
                l++;
            }
            else
                r--;

        }
    }

}
搜索更多相关主题的帖子: public import 键盘 如何 public import 键盘 如何 
2015-09-27 15:13



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-457700-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.183647 second(s), 8 queries.
Copyright©2004-2025, BCCN.NET, All Rights Reserved