1

我已经尝试了几个小时来做​​一条像这样的随机行走(路径)。从上到下。

x  1  x
x  2  3
x  x  4
7  6  5
8  x  x
9  10 x

我最大的困难是计算从右到左的位移,因为循环(for,while..)是从左到右的。

我不精通数学,所以我使用了一种简单的方法。我有两个数组。一个与前一行的位置。

$previousRow=array(1=>"x",2=>"1",3=>"x");

我必须填写当前行的一个。

$currentRow=array(1=>"",2=>"",3=>"");

$p   //Is the current position. 1, 2 or 3. Example $currentRow[$p]
$last   //the last number that increases each time the path has a new step.

我正在使用一些循环和条件来设置位移。

这种方法是错误的吗?

编辑:根据评论要求的进一步规范:

  1. 起点位于第一行的中间点
  2. 终点位于最后一行
  3. 端点可以位于最后一行的任何一列
4

1 回答 1

0

每个字段都有三种可能性:左、右、前进。

某些情况会减少这种情况,例如左侧或右侧没有字段,或者该字段已被访问。

所以找出可能的动作,随机选择一个并继续。

于 2013-09-03T15:29:05.527 回答