Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > comp.lang.python > #24822 > unrolled thread
| Started by | Miheer Dewaskar <miheer.dew@gmail.com> |
|---|---|
| First post | 2012-07-03 20:38 +0530 |
| Last post | 2012-07-03 20:38 +0530 |
| Articles | 1 — 1 participant |
Back to article view | Back to comp.lang.python
This discussion starts older than the indexed window; earlier articles aren't shown. The article labeled Started by
below is the oldest one visible, not the original post.
Re: Best data structure for DFS on large graphs Miheer Dewaskar <miheer.dew@gmail.com> - 2012-07-03 20:38 +0530
| From | Miheer Dewaskar <miheer.dew@gmail.com> |
|---|---|
| Date | 2012-07-03 20:38 +0530 |
| Subject | Re: Best data structure for DFS on large graphs |
| Message-ID | <mailman.1747.1341328088.4697.python-list@python.org> |
On Tue, Jul 3, 2012 at 8:10 PM, Tim Chase <python.list@tim.thechases.com> wrote: > On 07/03/12 08:39, Miheer Dewaskar wrote: >> On Tue, Jul 3, 2012 at 4:53 PM, Stefan Behnel <stefan_ml@behnel.de> wrote: >>> >>> Miheer Dewaskar, 03.07.2012 13:11: >>>> I am not sure,but if there are large number of states Dictionaries wont >>>> help much right? >>> >>> Dicts are fast for lookup, not for searching. >>> >> What do you mean by searching in the context of Dicts? > > It took me a while to parse Stefan's post, and I *think* he means > that key-indexing (direct lookup) is fast O(1), and that by > "searching" he means something like "find all keys/values matching > property $FOO" such as between a range. > > One of the important things you omit is how you define "large". Is > this a couple thousand? Hundreds of thousands? Millions? I want it to be a generic Game solver.So the number of states depends on the game. For a simple tic-tac-toe the upper bound is 3^9 states.But for more complex games it could be much larger. I would like to assume that the number of states can grow arbitrarily large. > Also, what sort of information are you keeping in the state? Just > available transitions? Or do you want additional metadata? If it's > just transition mappings (A->B) rather than complex objects, I'd try > using a dict first, and if it's too large, I'd reach for the > "anydbm" module to store them to disk. The state just has 'state data'.The transitions are obtained by functions analyzing the state. So that I should not be able to identify between two same states that have been reached by different means. For example in the tic-tac-toe game the states can be a 3x3 box of integers 0 -> unoccupied 1 -> x 2-> o ( (2,0,1), o - x (1,1,0), -> x x - (2,0,0) ) o - - -- Miheer Dewaskar
Back to top | Article view | comp.lang.python
csiph-web