1

私は Python を初めて使用し、言語をよりよく理解するためにいくつかのプログラミングの問題に取り組んでいます。これまでのところ、https://www.python.org/doc/essays/graphs/で Guido のエッセイを読みました。これは、グラフの操作方法を理解するのに役立ちました。しかし、競技プログラミングの問題には、ほとんどの場合、2 次元のグリッドがあります。

U..X
..X.
X..X
..X.

それらを Python で表現するにはどうすればよいですか? リストのリストは適切な表現ですか? より良い、またはより多くの「Pythonic」メソッドはありますか? ありがとう。

4

2 に答える 2

2

リストのリストは通常​​、ほとんどのグリッドの使用に適していますが、2 次元配列でより高度なことを行うことに興味がある場合は、おそらくNumPyを調べることをお勧めします。NumPy は C で実装されており、非常に効率的です。探しているよりもはるかに多くの機能がありますが、とにかく一見の価値があります。

于 2013-01-13T00:27:54.187 に答える
0

Python では、ネストされたリストが一般的に使用されます。インデックスが既知であれば、「グリッド」上のポイントに簡単にアクセスできますgrid[y][x]

それらをグリッド形式で印刷することも簡単です。

for i in grid:
    print i
于 2013-01-13T00:28:15.630 に答える