본문 바로가기

sudoku

[Ruby] 창작 스도쿠 푸는 알고리즘 이 알고리즘으로 UI를 구현한 Sudoku solver는 http://sunnyholic.com/100 여기 있습니다. C++로 동일하게 작성한 코드는 http://sunnyholic.com/81 입니다.Java로 동일하게 작성한 코드는 http://sunnyholic.com/80 입니다. 빈 칸중 들어갈 수 있는 수의 경우가 제일 적은 칸을 선택하여 수를 삽입한 뒤 재귀적으로 풀고오답이면 백트래킹 하고 정답이 나오면 종료하는 알고리즘 입니다. Sudoku 클래스 메소드1. initialize : 간편하게 행 열 섹터를 순차적으로 순회하기 위해 미리 순회 순서를 찾아놓음.2. find_abl_num rn, cn : rn,cn 칸에 가능한 숫자 셋트 리턴3. find_min_possible : 가장 가능한.. 더보기
[Javascript] 스도쿠 푸는 프로그램 C++로 작성되어 있는 동일한 알고리즘을 토씨 하나 안틀리고 그대로 자바스크립트로 옮긴 프로그램 입니다. Stand by Solve Set Load Clear Show process(slow) 알고리즘과 소스코드 참조는 C++는 http://sunnyholic.com/81 이 포스트를 Java는 http://sunnyholic.com/80 이 포스트를 봐주세요. 동일한 알고리즘을 토씨 하나 안틀리고 그대로 자바스크립트로 옮긴 프로그램 입니다. 텍스트 입력란에 공백 문자로는 0과 점(.)만 인정합니다. 또한 유일한 답을 가진 정상적인 문제에 대해서만 풀이를 보장합니다. 실행파일로 다운로드(윈도용) 더보기
[C++] 창작 스도쿠 푸는 알고리즘 이 알고리즘으로 UI를 구현한 Sudoku solver는 http://sunnyholic.com/100 여기 있습니다. 자바로 동일하게 작성한 코드는 http://sunnyholic.com/80 입니다. 비트마스크로 최적화 한 코드는 글의 맨 아래를 봐주세요. 빈 칸중 들어갈 수 있는 수의 경우가 제일 적은 칸을 선택하여 수를 삽입한 뒤 재귀적으로 풀고오답이면 백트래킹 하고 정답이 나오면 종료하는 알고리즘 입니다.C처럼 보이지만 C문법을 따르진 않았습니다. 함수 메인 제외 5개1. init() : 간편하게 행 열 섹터를 순차적으로 순회하기 위해 미리 순회 순서를 찾아놓음.2. sizeofNumset(Set set) : 가능한 숫자 셋트에서 그 숫자들을 세어 개수를 리턴3. findAblNum(int rn.. 더보기
[Java] 창작 스도쿠 푸는 알고리즘 이 알고리즘으로 UI를 구현한 Sudoku solver는 http://sunnyholic.com/100 여기 있습니다. C++로 동일하게 작성한 코드는 http://sunnyholic.com/81 입니다. 빈 칸중 들어갈 수 있는 수의 경우가 제일 적은 칸을 선택하여 수를 삽입한 뒤 재귀적으로 풀고 오답이면 백트래킹 하고 정답이 나오면 종료하는 알고리즘 입니다. 함수 메인 제외 5개 1. 생성자 함수 : 간편하게 행 열 섹터를 순차적으로 순회하기 위해 미리 순회 순서를 찾아놓음. 2. sizeofNumset(Set set) : 가능한 숫자 셋트에서 그 숫자들을 세어 개수를 리턴 3. findAblNum(int rn,int cn) : (rn,cn)칸에 가능한 숫자 셋트 리턴 4. findMinPossibl.. 더보기