mirror of
https://github.com/youngyangyang04/leetcode-master.git
synced 2025-07-08 00:43:04 +08:00
添加(0100.相同的树.md):增加typescript版本
This commit is contained in:
@ -240,6 +240,46 @@ Go:
|
||||
|
||||
JavaScript:
|
||||
|
||||
TypeScript:
|
||||
|
||||
> 递归法-先序遍历
|
||||
|
||||
```typescript
|
||||
function isSameTree(p: TreeNode | null, q: TreeNode | null): boolean {
|
||||
if (p === null && q === null) return true;
|
||||
if (p === null || q === null) return false;
|
||||
if (p.val !== q.val) return false;
|
||||
return isSameTree(p.left, q.left) && isSameTree(p.right, q.right);
|
||||
};
|
||||
```
|
||||
|
||||
> 迭代法-层序遍历
|
||||
|
||||
```typescript
|
||||
function isSameTree(p: TreeNode | null, q: TreeNode | null): boolean {
|
||||
const queue1: (TreeNode | null)[] = [],
|
||||
queue2: (TreeNode | null)[] = [];
|
||||
queue1.push(p);
|
||||
queue2.push(q);
|
||||
while (queue1.length > 0 && queue2.length > 0) {
|
||||
const node1 = queue1.shift(),
|
||||
node2 = queue2.shift();
|
||||
if (node1 === null && node2 === null) continue;
|
||||
if (
|
||||
(node1 === null || node2 === null) ||
|
||||
node1!.val !== node2!.val
|
||||
) return false;
|
||||
queue1.push(node1!.left);
|
||||
queue1.push(node1!.right);
|
||||
queue2.push(node2!.left);
|
||||
queue2.push(node2!.right);
|
||||
}
|
||||
return true;
|
||||
};
|
||||
```
|
||||
|
||||
|
||||
|
||||
|
||||
-----------------------
|
||||
<div align="center"><img src=https://code-thinking.cdn.bcebos.com/pics/01二维码一.jpg width=500> </img></div>
|
||||
|
Reference in New Issue
Block a user