GitHub Address:https://github.com/ZZZ-JC/sudoku
PSP2.1 |
SUMMARY |
The time required to complete the plan(min) |
Planning |
plan |
30 |
Estimate |
It estimated that the task requires much time and planning generally work steps |
10 |
Development |
Develop |
1800 |
Analysis |
demand analysis (Including learning new technology) |
60 |
Design Spec |
Generate design documents |
- |
Design Review |
Design Review |
- |
Coding Standard |
Code Specification (Develop an appropriate specification for the current development) |
40 |
Design |
Specific design |
- |
Coding |
Specific coding |
400 |
Code Review |
Code Review |
30 |
test |
Test (self-test, modify the code, submit modifications) |
400 |
Reporting |
report |
420 |
Test Report |
testing report |
360 |
Size Measurement |
Computing workload |
30 |
Postmortem & Process Improvement Plan |
Hindsight ,And propose process improvement plan |
60 |
Summary |
total |
3640 |
Generates Sudoku final
My idea is to use a deep search and backtracking to solve this problem, in order to be more Sudoku random, reduce duplication, you can find Sudoku in the first nine rows, then according to the number nine inputs, each face of a blank, a loop from 1 to 9, and after three determination, i.e., determining the row, column, and determining the squared determined, i.e., if they meet filling the spaces, and then exit the function cycle. (Of course, only allow the first line of randomly sorted, resulting in random Sudoku is not very strong)
Solving Sudoku
Similarly the use of deep search and backtracking to do, enter a Sudoku mess, scratch search encountered 0, then three times a judge, that judge rows, columns, and squares judgment to determine if the problem is not filled in, search for the next 0 grid, if not, the next can find a number of successful, if not enough to continue to go back.
function
The establishment of a random tree seed class, generates a random number.
Established four function random (), backtrace (), fc (), xuehao (). random () is used to find a random number 1-9 according to the first document; when xuehao () for generating the number of single final, the first row first column numbers based on my student number is generated; FC () with to determine the random number generated at the current position with the rows, columns, other numbers are squared conflict, the conflict is discarded; backtrace () has been used to search deep to find the right number alone, and he has not encountered when the appropriate data, back to the action step. Generating a unique number in the final of the four functions need to use, while solving the need to use only the number of independent backtrace () and fc ().
Performance analysis chart
Rows, columns, squares determination
Deep search with backtracking
Generate a random number seed
PSP2.1 |
SUMMARY |
The actual time required to complete(min) |
Planning |
plan |
50 |
Estimate |
It estimated that the task requires much time and planning generally work steps |
20 |
Development |
Develop |
2000 |
Analysis |
demand analysis (Including learning new technology) |
90 |
Design Spec |
Generate design documents |
- |
Design Review |
Design Review |
- |
Coding Standard |
Code Specification (Develop an appropriate specification for the current development) |
40 |
Design |
Specific design |
- |
Coding |
Specific coding |
500 |
Code Review |
Code Review |
30 |
test |
Test (self-test, modify the code, submit modifications) |
550 |
Reporting |
report |
500 |
Test Report |
testing report |
420 |
Size Measurement |
Computing workload |
- |
Postmortem & Process Improvement Plan |
Hindsight ,And propose process improvement plan |
80 |
Summary |
total |
4280 |
Impression
The project work is very strange for us, before we had any contact with such a job, so the process is completed, we encountered a lot of problems. This problem becomes all the footprints of our study one by one, in this job, I learned a lot of new things, such as: the way github registration and uploading files to PSP awareness, and class projects the importance of the function. Although the completion of the process is tortuous, but the general feeling down a lot of harvest, compared to the future development projects will help.A Project Site https://github.com/Slontia/Sudoku Additional work (GUI):https://github.com/Slontia/SudokuGUI Second, the development time PSP2.1 Personal Software Process Stages Estimated time c...
Topic requirements 1) Give the Github project address at the beginning of the article. (1') 2) Before starting to implement the program, record the estimated time you will spend on the development of ...
GitHub address: Step1~3: https://github.com/Aria-K-Alethia/SE-Sudoku-Pair Step4: https://github.com/Aria-K-Alethia/SE-Sudoku-Pair/tree/dev-combine Step5: https://github.com/Aria-K-Alethia/SE-Sudoku-Pa...
Personal project: generate and solve Sudoku finals 1. Project introduction and address 2. PSP time estimation Three. Problem-solving ideas 1. Generate Sudoku 2. Solve Sudoku 4. Design and Implementati...
Code writing After these few days of hard work, the code is basically completed, please refer toGitHub main function The implementation of the main function is relatively simple, briefly describe: Fir...
project address https://github.com/si1entic/Sudoku-2.git demand analysis Command Line There are six kinds of legal parameters: -c, -s, -n -m, -n -r, -n -u, -n -r -u (support multiple parameters in any...
At this stage, we have begun to finalize our script, and ready our storyboard. Discussion groups played a significant role. There are two main characters, we do a lot of adjustments in the two roles o...
table of Contents Download the project from Spring Initializr Supplement the code in first-app-demo Operation and phenomenon Download the project from Spring Initializr The link is as fo...
Article Directory 1. Download IDEA 2. Download JDK (you can find it by searching csdn), Tomcat 3. Download Maven 1. Download IDEA 2. Download JDK (you can find it by searching csdn), Tomcat Tomcat off...