Don't like ads? PRO users don't see any ads ;-)
Guest

Untitled

By: a guest on Jun 26th, 2012  |  syntax: None  |  size: 0.50 KB  |  hits: 9  |  expires: Never
download  |  raw  |  embed  |  report abuse  |  print
Text below is selected. Please press Ctrl+C to copy to your clipboard. (⌘+C on Mac)
  1.  
  2. void printPath(Node node, int target) {
  3.   List<Node> path = new ArrayList<Node>();
  4.   traversePath(node, target, path, 0);
  5. }
  6.  
  7. void traversePath(Node node, int target, List<Node> path, level) {
  8.   if (node == null) return;
  9.  
  10.   path.add(level, node);
  11.  
  12.   int tmp = target;
  13.   for(int i = level; i >= 0;  i--) {
  14.     tmp = tmp - path.get(i).value;
  15.     if (tmp == 0) printPath(path, i, level);
  16.   }
  17.  
  18.   traversePath(node.left, target, path.clone(), level + 1);
  19.   traversePath(node.right, target, path.clone(), level + 1);
  20. }