339. Nested List Weight Sum

    /*
     * 339. Nested List Weight Sum
     * 2016-7-10 by Mingyang
     * 这就是很简单的dfs了,不详谈,count+1不是count++
     */
    public int depthSum(List<NestedInteger> nestedList) {
        if(nestedList==null||nestedList.size()==0)
          return 0;
        return depthSumHelper(nestedList,1);
     }
     public int depthSumHelper(List<NestedInteger> nestedList,int count){
         int res=0;
         for(NestedInteger nest:nestedList){
            if(nest.isInteger()){
                res+=count*nest.getInteger();
            }else{
                List<NestedInteger> temp=nest.getList();
                res+=depthSumHelper(temp,count+1);
            }
         } 
         return res;
     }
  // This is the interface that allows for creating nested lists.
  // You should not implement it, or speculate about its implementation
      public interface NestedInteger {  
// @return true if this NestedInteger holds a single integer, rather than a nested list. public boolean isInteger(); // @return the single integer that this NestedInteger holds, if it holds a single integer
// Return null if this NestedInteger holds a nested list public Integer getInteger(); // @return the nested list that this NestedInteger holds, if it holds a nested list
// Return null if this NestedInteger holds a single integer public List<NestedInteger> getList(); }