mirror of
https://github.com/youngyangyang04/leetcode-master.git
synced 2025-07-08 00:43:04 +08:00
Merge pull request #2338 from xin0907/master
update: 更新0104.二叉树的最大深度里的 n 叉树最大深度的 ts 解法,原本代码不能通过 leetcode 测试
This commit is contained in:
@ -738,26 +738,36 @@ function maxDepth(root: TreeNode | null): number {
|
||||
|
||||
```typescript
|
||||
// 后续遍历(自下而上)
|
||||
function maxDepth(root: TreeNode | null): number {
|
||||
if (root === null) return 0;
|
||||
return Math.max(maxDepth(root.left), maxDepth(root.right)) + 1;
|
||||
};
|
||||
function maxDepth(root: Node | null): number {
|
||||
if (root === null) return 0
|
||||
let depth = 0
|
||||
for (let i = 0; i < root.children.length; i++) {
|
||||
depth = Math.max(depth, maxDepth(root.children[i]))
|
||||
}
|
||||
return depth + 1
|
||||
}
|
||||
|
||||
// 前序遍历(自上而下)
|
||||
function maxDepth(root: TreeNode | null): number {
|
||||
function recur(node: TreeNode | null, count: number) {
|
||||
if (node === null) {
|
||||
resMax = resMax > count ? resMax : count;
|
||||
return;
|
||||
function maxDepth(root: Node | null): number {
|
||||
if (root === null) return 0
|
||||
|
||||
let depth: number = 0
|
||||
const queue: Array<Node | null> = []
|
||||
queue.push(root)
|
||||
|
||||
while (queue.length > 0) {
|
||||
let len = queue.length
|
||||
depth++
|
||||
for (let i = 0; i < len; i++) {
|
||||
// 当前层遍历
|
||||
let curNode: Node | null = queue.shift()!
|
||||
for (let j = 0; j < curNode.children.length; j++) {
|
||||
if (curNode.children[j]) queue.push(curNode.children[j])
|
||||
}
|
||||
}
|
||||
recur(node.left, count + 1);
|
||||
recur(node.right, count + 1);
|
||||
}
|
||||
let resMax: number = 0;
|
||||
let count: number = 0;
|
||||
recur(root, count);
|
||||
return resMax;
|
||||
};
|
||||
return depth
|
||||
}
|
||||
|
||||
|
||||
```
|
||||
|
Reference in New Issue
Block a user