class TestLifoList(unittest.TestCase):
    def setUp(self):
        self.f = LifoList()
        self.f.append(1)
        self.f.append(2)
        self.f.append(3)

    def test_sorted_lifo(self):
        self.assertTrue(sorted_equals_pop(self.f))
Beispiel #2
0
def depth_first(problem, graph_search=False, viewer=None):
    '''
    Depth first search.

    If graph_search=True, will avoid exploring repeated states.
    Requires: SearchProblem.actions, SearchProblem.result, and
    SearchProblem.is_goal.
    '''
    return _search(problem,
                   LifoList(),
                   graph_search=graph_search,
                   viewer=viewer)
Beispiel #3
0
def limited_depth_first(problem, graph_search=False, viewer=None):
    '''
    Limited depth first search.

    Depth_limit is the maximum depth allowed, being depth 0 the initial state.
    If graph_search=True, will avoid exploring repeated states.
    Requires: SearchProblem.actions, SearchProblem.result, and
    SearchProblem.is_goal.
    '''
    return _search(problem,
                   LifoList(),
                   graph_search=graph_search,
                   depth_limit=30,
                   viewer=viewer)
 def setUp(self):
     self.f = LifoList()
     self.f.append(1)
     self.f.append(2)
     self.f.append(3)