Notice
250x250
Recent Posts
Recent Comments
Link
넘치게 채우기
[LeetCode] 100. Same Tree 본문
728x90
반응형
https://leetcode.com/problems/same-tree/description/
LeetCode - Same Tree
문제 유형 : 트리, 탐색
문제 난이도 : Easy
문제
Given the roots of two binary trees p and q, write a function to check if they are the same or not.
Two binary trees are considered the same if they are structurally identical, and the nodes have the same value.
두 이진 트리의 루트 p와 q가 주어진다.두 트리가 같은지 판별하시오.
값과 구조가 동일해야 합니다.
풀이
트리를 순회하는 로그를 담는 문자열을 만든다.
전위 순회로 하면서, 각 노드의 값을 열거하는 식으로 하였다.
노드가 빈 노드면 문자 n을 붙인다. 구조적으로 같은지 확인하기 위해서이다.
두 트리의 순회로 만들어진 각각의 문자열을 비교해주면 된다.
코드
C++
/**
* Definition for a binary tree node.
* struct TreeNode {
* int val;
* TreeNode *left;
* TreeNode *right;
* TreeNode() : val(0), left(nullptr), right(nullptr) {}
* TreeNode(int x) : val(x), left(nullptr), right(nullptr) {}
* TreeNode(int x, TreeNode *left, TreeNode *right) : val(x), left(left), right(right) {}
* };
*/
class Solution {
public:
void traverse(TreeNode* root, string &s) {
if(root == nullptr) {
s += "n";
return;
}
s += to_string(root -> val);
traverse(root -> left, s);
traverse(root -> right, s);
}
bool isSameTree(TreeNode* p, TreeNode* q) {
string s1 = "";
string s2 = "";
traverse(p, s1);
traverse(q, s2);
return s1 == s2;
}
};
728x90
반응형
'PS > LeetCode' 카테고리의 다른 글
[LeetCode] 513. Find Bottom Left Tree Value (0) | 2024.02.28 |
---|---|
[LeetCode] 543. Diameter of Binary Tree (0) | 2024.02.27 |
[LeetCode] 787. Cheapest Flights Within K Stops (0) | 2024.02.23 |
[LeetCode] 997. Find the Town Judge (0) | 2024.02.22 |
[LeetCode] 201. Bitwise AND of Numbers Range (0) | 2024.02.21 |