CS 기초·알고리즘
트리 탐색과 뷰 계층
원본 뷰 계층의 특정 UIView 인스턴스가 주어지고, 같은 구조로 복제된 뷰 계층이 있습니다. 복제본에서 대응되는 뷰를 찾는 함수를 어떻게 설계하겠습니까?
면접관은 이 답을 어떻게 들을까요? 넘어갈지, 더 물어볼지, 떨어뜨릴지 알려 주고, 걸리는 문장은 콕 집어 줘요. 점수는 그대로예요.
원본 뷰 계층의 특정 UIView 인스턴스가 주어지고, 같은 구조로 복제된 뷰 계층이 있습니다. 복제본에서 대응되는 뷰를 찾는 함수를 어떻게 설계하겠습니까?
원본에서 타깃까지의 경로(각 단계의 subviews 인덱스)를 기록한 뒤 복제본에서 같은 인덱스를 따라 내려가면 O(depth)다. 경로를 모른다면 두 트리를 동시에 순회하며 원본 노드가 타깃인 시점의 복제본 노드를 돌려준다. 구조가 다르거나 뷰가 재사용될 때가 엣지케이스다.
UIKit주관식기초
루트 뷰에서 시작해 특정 조건(예: tag == 99 또는 특정 타입)을 만족하는 뷰를 찾는 함수를 어떻게 작성하겠습니까? …
#bfs #dfs #view-hierarchy
CS 기초·알고리즘주관식심화
이미지 마스크가 N×M 격자로 주어지고 1은 전경, 0은 배경입니다. 상하좌우로 이어진 1 덩어리(연결 영역)마다 크기를 구해 배열로 돌려주는 함수를 작성한다면…
#bfs #dfs
CS 기초·알고리즘주관식심화
깊이가 수천 단계인 중첩 JSON을 재귀로 순회하다가 백그라운드 스레드에서만 크래시가 납니다. 원인은 무엇인가요?
#recursion
CS 기초·알고리즘주관식기초
집 꾸미기 추천에서 방과 방의 연결 그래프를 따라 최소 이동 횟수를 구합니다. 모든 간선 비용이 같을 때 BFS가 최단 경로를 보장하는 이유를 설명해 주세요.
#bfs