二叉树和图:确定能否从一个点遍历到另一个节点

阅读更多

Use recursion and traversal to solve.

boolean BSTbranch(TreeNode start, TreeNode end){
   if(start == end) return true;
 
   if(start != null){
      if(!BSTbranch(start.left, end){
         if(!BSTbranch(start.right, end)
            return false;
         else
            return true;
      }
      else
         return true;
   }
   return false;
}
 

 

boolean graphBranch(int start, int end) {   
    if(vertexs[index] == null) return false;
    vertexs[start].visit();
    if(start == end) return true; 
    
    for(int i = 0; i <= pos; i ++){
       if(adjMat[start][i] == 1 && !vertexs[i].isVisited())
          graphBranch(i. end);
       }    
               
    return false;
}

你可能感兴趣的:(二叉树和图:确定能否从一个点遍历到另一个节点)