March 31, 2013

  • 呢個post, 係用黎恥笑自己submit左個order n^5既code
    過large judge timeout

    連寫呢D唔洗algorithm既code都搞左咁耐-.-
    唔stackoverflow下真係唔知有D咁既方法compare兩條ArrayList係咪一樣
    聽日再諗過個醒少少既algorithm

    sum of 3 numbers

    http://leetcode.com/onlinejudge#question_15

    public ArrayList<ArrayList<Integer>> threeSum(int[] num) {
     ArrayList<ArrayList<Integer>> result = new ArrayList<ArrayList<Integer>>();  
     Arrays.sort(num);
     for (int i = 0; i < num.length; i++){
      for (int j = i+1; j < num.length; j++){
       for (int k = j+1; k < num.length; k++){
        if ((num[i] + num[j] + num[k]) == 0){
         ArrayList<Integer> list = new ArrayList<Integer>();
         list.add(num[i]); list.add(num[j]); list.add(num[k]);
         Boolean repeated = false;
         for (int m = 0; m < result.size(); m++){
          List<Integer> added = new ArrayList<Integer>(result.get(m));
          added.removeAll(list);
          if (added.size () == 0) repeated = true;
         }
         if (!repeated) result.add(list);
        }
       }
      }
     }
     return result;
    }

Recent Posts

Recent Comments

Categories