In computer science, iterative deepening search or more specifically iterative deepening depth-first search[2] (IDS or IDDFS) is a state space/graph search strategy in which a depth-limited version of depth-first search is run repeatedly with increasing depth limits until the goal is found. IDDFS is optimal like breadth-first search, but uses much less memory; at each iteration, it visits the nodes in the search tree in the same order as depth-first search, but the cumulative order in which nodes are first visited is effectively breadth-first.[1]
Contents
1 Algorithm for directed graphs
2 Properties
3 Asymptotic analysis
3.1 Time complexity
3.1.1 Proof
3.1.2 Example
3.2 Space complexity
3.2.1 Proof
4 Example
5 Related algorithms
5.1 Bidirectional IDDFS
5.1.1 Time and space complexities
5.1.2 Pseudocode