Backtracking is a general algorithm for finding all (or some) solutions to some computational problem, that incrementally builds candidates to the solutions, and abandons each partial candidate c ("backtracks") as soon as it determines that c cannot possibly be completed to a valid solution. The classic textbook example of the use of backtracking is the eight queens puzzle, that asks for all arrangements of eight queens on a standard chessboard so that no queen attacks any other.
more from Wikipedia
Algorithm
In mathematics and computer science, an algorithm Listen/ˈælɡərɪðəm/ (originating from al-Khwārizmī, the famous mathematician Muḥammad ibn Mūsā al-Khwārizmī) is a step-by-step procedure for calculations. Algorithms are used for calculation, data processing, and automated reasoning. More precisely, an algorithm is an effective method expressed as a finite list of well-defined instructions for calculating a function.
more from Wikipedia
Eight queens puzzle
18pxa b c d e f g h 18px 826pxpx26pxpx26pxpx26pxpx26pxpx26pxpx26pxpx26pxpx8 726pxpx26pxpx26pxpx26pxpx26pxpx26pxpx26pxpx26pxpx7 626pxpx26pxpx26pxpx26pxpx26pxpx26pxpx26pxpx26pxpx6 526pxpx26pxpx26pxpx26pxpx26pxpx26pxpx26pxpx26pxpx5 426pxpx26pxpx26pxpx26pxpx26pxpx26pxpx26pxpx26pxpx4 326pxpx26pxpx26pxpx26pxpx26pxpx26pxpx26pxpx26pxpx3 226pxpx26pxpx26pxpx26pxpx26pxpx26pxpx26pxpx26pxpx2 126pxpx26pxpx26pxpx26pxpx26pxpx26pxpx26pxpx26pxpx1 18pxa b c d e f g h 18px One solution to the eight queens puzzle The eight queens puzzle is the problem of placing eight chess queens on an 8×8 chessboard so that no two queens attack each other.
more from Wikipedia
Combinatorial optimization
In applied mathematics and theoretical computer science, combinatorial optimization is a topic that consists of finding an optimal object from a finite set of objects. In many such problems, exhaustive search is not feasible. It operates on the domain of those optimization problems, in which the set of feasible solutions is discrete or can be reduced to discrete, and in which the goal is to find the best solution.
more from Wikipedia
Subroutine
In computer science, a subroutine, also termed procedure, function, routine, method, or subprogram, is a part of source code within a larger computer program that performs a specific task and is relatively independent of the remaining code. As the name subprogram suggests, a subroutine behaves in much the same way as a computer program that is used as one step in a larger program or another subprogram.
more from Wikipedia
Cycle (graph theory)
In graph theory, the term cycle may refer to a closed path. If repeated vertices are allowed, it is more often called a closed walk. If the path is a simple path, with no repeated vertices or edges other than the starting and ending vertices, it may also be called a simple cycle, circuit, circle, or polygon; see Cycle graph. A cycle in a directed graph is called a directed cycle. The term cycle may also refer to: An element of the binary or integral (or real, complex, etc.
more from Wikipedia
Chessboard
18pxa b c d e f g h 18px 826pxpx26pxpx26pxpx26pxpx26pxpx26pxpx26pxpx26pxpx8 726pxpx26pxpx26pxpx26pxpx26pxpx26pxpx26pxpx26pxpx7 626pxpx26pxpx26pxpx26pxpx26pxpx26pxpx26pxpx26pxpx6 526pxpx26pxpx26pxpx26pxpx26pxpx26pxpx26pxpx26pxpx5 426pxpx26pxpx26pxpx26pxpx26pxpx26pxpx26pxpx26pxpx4 326pxpx26pxpx26pxpx26pxpx26pxpx26pxpx26pxpx26pxpx3 226pxpx26pxpx26pxpx26pxpx26pxpx26pxpx26pxpx26pxpx2 126pxpx26pxpx26pxpx26pxpx26pxpx26pxpx26pxpx26pxpx1 18pxa b c d e f g h 18px Chessboard, with algebraic notation A chessboard is the type of checkerboard used in the board game chess, and consists of 64 squares (eight rows and eight columns) arranged in two alternating colors (light and dark).
more from Wikipedia
Computer
A computer is a general purpose device which can be programmed to carry out a finite set of arithmetic or logical operations. Since a sequence of operations can be readily changed, the computer can solve more than one kind of problem. The essential point of a computer is to implement an idea, the terms of which are satisfied by Alan Turing's Universal Turing machine. Conventionally, a computer consists of at least one processing element and some form of memory.
more from Wikipedia