Given two binary trees, write a function to check if they are equal or not.
Two binary trees are considered equal if they are structurally identical and the nodes have the same value.
<Solution>這題是要比較兩個 binary tree 是否一樣
可以用 DFS 來解這道題目,想法如下
- 兩個 node 都是 NULL 的時候,回傳 true
- 只有一個有值,或是兩個的值不一樣,就回傳 false
- 比完當前的值,檢查左子樹和右子樹是不是也一樣
c++
kotlin
這題還可以用 binary tree traversal 的方式去解,有 inorder、preorder、postorder 可以選
在 traverse 的同時,檢查值和樹的結構是否一樣即可
這邊使用 preorder traversal 的方式,code 如下
沒有留言:
張貼留言