Sudoku sudoku (a) subject analysis

  Big guys, today I started to update the blog.
  This series of blog I'll walk my progress in the completion of this course the big jobs sudoku, as well as some personal thoughts with the harvest. This is the second time I published blog, is the first to write technical blog. Sure a lot of students like me because of large job tasks required to start a blog, I think it makes sense to step across, write a blog allows us to transform inputs into outputs, deepen understanding and memory, a more thorough analysis of the problem. sudoku is a big job of software engineering, in fact, this task is not difficult, there are a lot of information to follow, but the software design process through this task is not difficult to grasp is more critical. This is my first contact with software developers, we will be in contact with a lot of new knowledge and skills, but everything is hard in the beginning, and I will do our best efforts to achieve this little game, of course, more important is the process.
-------------------------------------------------- -------------------------------------------------- ----------------
  detailed requirements given first task: https://github.com/surpasss/software-engineering/blob/master/ project requirements .pdf
  there are three sub-tasks:
  1. final generation, form the command line: sudoku.exe -cn (n to generate a number of unique final, 1 <= n <= 1000000 ), resulting in a final sudoku.txt stored text file.
  2. Sudoku solver, command line input in the form of: sudoku.exe -s path, read the sudoku puzzle from the path will be a feasible solution for each topic sudoku.txt saved in a text file.
  3. GUI game, randomly generated initial Sudoku chess game, players get feedback after submission if done right.
  As can be seen from the task scoring rules in addition to the basic norms of Bowen also required to generate run-time finality of this sub-task as short as possible, it is necessary to use performance analysis tools for analysis, after optimization for better performance. While the other two sub-tasks do not have too many demands, to achieve the basic function.
-------------------------------------------------- -------------------------------------------------- ----------------
  here I explain what to add next Sudoku, Sudoku by the 3-9 3 hours 9 board composed of large chessboard 9, small board containing 1 to 9 this 9 digits, each row of the chessboard, each column of nine numbers are not the same, i.e., each row, each column comprises from 1 to 9 nine figures.
  Prior also spent some time on the Internet and read some relevant information, I talk about these three current sub-tasks simple to understand. The first is the final generation, which is to follow the law (the law of our next issue as to say), or else 1e6 this number is too big. Find the law, the problem can start, mainly on how to optimize performance, the next issue then elaborate; the second task should be to solve Sudoku is the most complex one, and on the need to use a recursive algorithm with backtracking, compare the amount of code huge; the last game of the GUI, and does not involve any knowledge of algorithms, it is easy to determine whether the players do right, the key is how to generate the game page, I saw with C # and Java implementations than more online.
  All in all, this big job is not difficult, but for me this novice software development, it is still very challenging and meaningful. The following table gives the PSP before start implementing the program, which is above the estimated timing does not affect the actual spend my time, and may differ materially from actual time-consuming, because many things are now learning, beginner stages of the process and methods most important.

  In this way the first follow-up content so stay tuned.

Guess you like

Origin www.cnblogs.com/zyj-surpass/p/12096606.html