Advertisement
Guest User

TwoSum

a guest
Sep 8th, 2015
359
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 0.73 KB | None | 0 0
  1.  public static ArrayList<Integer> twoSum(List<Integer> a, int target)
  2.   {
  3.     ArrayList<Integer> list = new ArrayList<Integer>();
  4.     HashMap<Integer, Boolean> map = new HashMap<Integer, Boolean>();
  5.     for (Integer i : a)
  6.     {
  7.       int diff = target - i;
  8.       if (map.get(diff) != null)
  9.       {
  10.         list.add(a.indexOf(diff) + 1);
  11.         if (diff != i)
  12.         {
  13.           list.add(a.indexOf(i) + 1);
  14.         }
  15.         else
  16.         {
  17.           for(int num=a.indexOf(diff)+1;num<a.size();num++)
  18.           {
  19.             if(a.get(num)==i)
  20.             {
  21.               list.add(num + 1);
  22.               break;
  23.             }
  24.           }
  25.         }
  26.         break;
  27.       }
  28.       map.put(i, true);
  29.     }
  30.     return list;
  31.   }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement