res =max(res,ind-left_ind+1)returnres C++: /** * Definition for a binary tree node. * struct TreeNode { * int val; * TreeNode *left; * TreeNode *right; * TreeNode(int x) : val(x), left(NULL), right(NULL) {} * }; */classSolution{public:intwidthOfBinaryTree(TreeNode* r...
选出最大的宽度 即为结果 -(NSInteger)widthOfBinaryTree:(BinaryTreeNode*)root{if(root==nil){return0;}NSMutableArray*dataArray=[NSMutableArrayarray];[dataArray addObject:root];///用于判断某层NSIntegercount=dataArray.count;NSIntegerlevelMax=dataArray.count;BOOLisNewLevel=NO;BOOLisNewNode=NO;///...
public int widthOfBinaryTree(TreeNode root) { /* 层序遍历+记录完全二叉树的坐标,左孩子2*i,右孩子2*i+1 而且要有两个变量,一个记录本层节点数,一个记录下层节点数 层序遍历用队列实现 还要有一个队列记录本层的下标 */ //层序遍历记录节点 Queue<TreeNode> tree = new LinkedList<>(); //记录...
第四步:全部遍历完成后,输出result+1 # Python3classSolution:defwidthOfBinaryTree(self,root:Optional[TreeNode])->int:result=0level=[root]length=[1]nextlevel=[]nextlength=[]while(level):foriinrange(len(level)):iflevel[i].left:nextlevel.append(level[i].left)nextlength.append(length[i]*2-...
public int widthOfBinaryTree(TreeNode root) { depth(root, 1, 0); return result; } public void depth(TreeNode node , int nodeIndex, int level) { if (node == null) return; minValue.putIfAbsent(level, nodeIndex); result = Math.max(result, nodeIndex - minValue.get(level) + 1); ...
# Definition for a binary tree node. # class TreeNode: # def __init__(self, val=0, left=None, right=None): # self.val = val # self.left = left # self.right = right class Solution: def maxDepth(self, root: Optional[TreeNode]) -> int: ...
public int widthOfBinaryTree(TreeNode root) { int[] ans = new int[1]; robot(root, ans, new ArrayList<>(), 0, 1); return ans[0]; } private void robot(TreeNode root, int[] ans, ArrayList<Integer> leftIndexes, int level, int index) { if (root == null) { return; } if (le...
classSolution{intmax=Integer.MIN_VALUE;publicintmaxPathSum(TreeNode root){dfs(root);returnmax;}publicintdfs(TreeNode root){if(root==null)return0;intleft=dfs(root.left);intright=dfs(root.right);//作为该路径的终点intend=Math.max(Math.max(left,right)+root.val,root.val);//作为该路径的中间...
classSolution:defmaxDepth(self,root:TreeNode)->int:ifnotroot:return0self.ans=0self._dfs(root,0)returnself.ansdef_dfs(self,node,level):ifnotnode:returnifself.ans<level+1:self.ans=level+1self._dfs(node.left,level+1)self._dfs(node.right,level+1) ...
2836.Maximize-Value-of-Function-in-a-Ball-Passing-Game (H) 2846.Minimum-Edge-Weight-Equilibrium-Queries-in-a-Tree (H) 2851.String-Transformation (H+) Binary Search by Value 410.Split-Array-Largest-Sum (H-) 774.Minimize-Max-Distance-to-Gas-Station (H) 1011.Capacity-To-Ship-Packages-Withi...