File tree Expand file tree Collapse file tree 1 file changed +30
-0
lines changed
Expand file tree Collapse file tree 1 file changed +30
-0
lines changed Original file line number Diff line number Diff line change 1+ /**
2+ * Definition for a binary tree node.
3+ * public class TreeNode {
4+ * public var val: Int
5+ * public var left: TreeNode?
6+ * public var right: TreeNode?
7+ * public init() { self.val = 0; self.left = nil; self.right = nil; }
8+ * public init(_ val: Int) { self.val = val; self.left = nil; self.right = nil; }
9+ * public init(_ val: Int, _ left: TreeNode?, _ right: TreeNode?) {
10+ * self.val = val
11+ * self.left = left
12+ * self.right = right
13+ * }
14+ * }
15+ */
16+ class Solution {
17+ // O(n) time, O(h) space h = 트리의 높이. 최악: n, 평균: log n
18+ func isSameTree( _ p: TreeNode ? , _ q: TreeNode ? ) -> Bool {
19+ switch ( p, q) {
20+ case ( nil , nil ) :
21+ return true
22+ case let ( p? , q? ) :
23+ return p. val == q. val
24+ && isSameTree ( p. left, q. left)
25+ && isSameTree ( p. right, q. right)
26+ default :
27+ return false
28+ }
29+ }
30+ }
You can’t perform that action at this time.
0 commit comments