7.1.1 순열 알고리즘의 경험(Heuristic)정보 설계

바구니에서 공을 꺼내는 순열 문제의 경험 정보는 꺼내지 않은 공의 집합과 꺼낸 공의 집합이라 할 수 있습니다.

여기에서는 5장에서 구현한 동적 배열을 이용하여 꺼낸 공과 꺼내지 않은 공의 집합을 표현할게요.

 

초기 경험 정보를 생성하는 함수를 제공합시다. 이 함수에는 초기 바구니에 있는 공의 집합을 입력 인자로 전달받아야 합니다.

 

동적으로 생성한 경험 정보를 소멸하는 함수도 제공합시다.

 

현재 경험 정보에서 다음 경험 정보들을 조사하는 함수도 제공해야 합니다. 입력 인자로 현재 경험 정보와 다음 경험 정보들을 보관할 동적 배열을 받기로 할게요.

 

원하는 결론에 도달했는지 확인하기 위해 꺼낸 공의 개수를 반환하는 함수도 제공합시다.

 

그리고 꺼낸 공의 목록을 출력하는 함수도 제공합시다.