목록권오흠 교수님의 알고리즘 (2)
손영배 블로그 누구나 쉽게 이해하고 습득하기
int [] cols = new int[N+1]; return type queens(int level){ if(non-promissing(level)) report failure and return; else if(level == N) report answer and return; else visit children recursively; } 현재 내가 도착한 노드한 꽝이라면(non-promissing())이면 - 실패 내가 도착한 노드가 최종적 답이라면 - 성공 다음 level에 내가 갈 수 있는 노드들을 가보자 int [] cols = new int[N+1]; boolean queens(int level) { if(!promising(level) return false; else if (level =..
계층적 구조 트리는 노드(node)들과 노드들을 연결하는 링크(link)들로 구성됨 맨 위를 (root)라고 부르고 노드들을 연결하는 선을 "link", "edge", "branch"라고 부름 부모(parent) - 자식(child) 의 관계, 조상-자손 관계 리프(leaf)노드 - 자식이 없는 노드들을 가리켜서 부름 subtree 부트리 레벨 : Level1, Level2, ...... root부터 아래에서 높이 트리의 기본적인 성질 : 노드가 n개면 링크의 개수는 n-1개를 가진다. 이진 트리 (binary tree) 이진 트리에서 각 노드는 최대 2개의 자식을 가진다. 각각의 자식 노드는 자신이 부모의 왼쪽 자식인지 오른쪽 자식인지가 지정된다. (자식이 한 명인 경우에도) 이진 트리의 응용 예 : ..