죄송합니다. 여기에 잘못 게시했습니다. 하지만 일종의 Stackoverflow 채널 내가 이것을 게시해야하며이 최선이라고 생각하지 않았다.퍼즐 해결을위한 프로그래밍 디자인
저는 KenKen 퍼즐을 풀고 있습니다. 그것은 스도쿠와 매우 유사하며 합계와 연산자가있는 일부 케이지가 있으며 고유 번호를 사용하여 채우기 상자를 해결해야합니다.
퍼즐을 풀기 위해 나는 새장의 총 가치와 같은 각 새장에 대한 값을 얻을 수있는 입력을 가지게 될 것입니다. 연산자는 관련된 광고 상자에 사용됩니다. 되돌아을 사용하여 문제를 해결하기위한 나의 방법으로 당
:
- 나는 각 케이지의 클래스 데이터 구조를 만들 수있는 입력을 구문 분석하고있다.
나중에 각 케이지에 대한 클래스 개체 배열을 만듭니다.
그런 다음이 퍼즐을 해결하기 위해 백 트랙킹을 사용하여 알고리즘을 적용 할 것입니다.
나는 단지 그들이 프로그래밍 방식이 옳다고 생각한다면, 여기에 사람과상의하고 싶었 코딩을 시작하거나 나에게 뭔가를 제안하려는 경우 내가 여전히 접근 방식을 변경해야하거나 수행하기 전에 풀다.
나는 세트 솔버 사용을 제안합니다. 제약 프로그래밍을 고려해보십시오. 나는 기존의 순진 솔버 나 무차별 대항력에 비해 빠른 해결 시간을 갖는 set solver를 사용하여 n-queens 문제에 대한 해를 구현했습니다. 이 [8Queens on Google Code] (http://8queens.googlecode.com/) – user1406062
@ HussainAl-Mutawa 네, CSP를 사용합니다 .. 더 나은 방법입니다.하지만 이상하게도 코드/알 고리를 찾을 수 없습니다. 나를 도우려고. – CodeMonkey
[크림] (http://bach.istc.kobe-u.ac.)을 사용할 수 있습니다.jp/cream /) 이것은 자바 라이브러리이며 n-queens 문제를 푸는데 사용 된 라이브러리입니다. 제약 사항 해결 방법에 대한 모든 세부 사항, 사용 가능한 라이브러리를 효과적으로 사용하는 방법을 알 필요가 없습니다. 다른 라이브러리가 있으며 대부분이 오픈 소스입니다. – user1406062