[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[computer-go] Core data structures: modify or copy?



I'm once again playing with the core data structures in my Go program.

There must, of course, be a data structure to represent the board. If there is to be any kind of search, there are two options:

1) Maintain only one copy of the board, making and undoing all moves here.
2) Make a new copy at each node.

#1 might require some extensive winding and unwinding, especially in a best-first search such as proof-number search. #2 uses a lot of time copying (or rederiving) information on blocks, liberties, etc.

Any arguments for one over the other?

Peter Drake
Assistant Professor of Computer Science
Lewis & Clark College
http://www.lclark.edu/~drake/


_______________________________________________
computer-go mailing list
computer-go@xxxxxxxxxxxxxxxxx
http://www.computer-go.org/mailman/listinfo/computer-go/