Daily iOS
CS 기초·알고리즘

트리 탐색과 뷰 계층

원본 뷰 계층의 특정 UIView 인스턴스가 주어지고, 같은 구조로 복제된 뷰 계층이 있습니다. 복제본에서 대응되는 뷰를 찾는 함수를 어떻게 설계하겠습니까?

면접관은 이 답을 어떻게 들을까요? 넘어갈지, 더 물어볼지, 떨어뜨릴지 알려 주고, 걸리는 문장은 콕 집어 줘요. 점수는 그대로예요.
짧은 답 보기

원본에서 타깃까지의 경로(각 단계의 subviews 인덱스)를 기록한 뒤 복제본에서 같은 인덱스를 따라 내려가면 O(depth)다. 경로를 모른다면 두 트리를 동시에 순회하며 원본 노드가 타깃인 시점의 복제본 노드를 돌려준다. 구조가 다르거나 뷰가 재사용될 때가 엣지케이스다.

받은 질문 공유