update: 更新0104.二叉树的最大深度里的 n 叉树最大深度的 ts 解法,原本代码不能通过 leetcode 测试

This commit is contained in:
xin
2023-11-15 08:34:47 +08:00
parent 17bc52207b
commit 103256a36a

View File

@ -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
}
```