我正在尝试创建一个数组来存储我以前访问过的节点。节点将由字符串唯一表示,字符串可以很长。因此,我想知道这两种实现中的哪一种会更快或更具可扩展性。
$stateString = "..... ....";
$states = array();
1) 将状态字符串存储为键
$states[$stateString] = true; // I just want to set the key in the array
$visited = isset($states[$stateString]);
2) 将状态字符串存储为值
$states[] = $stateString;
$visited = in_array($stateString, $states);
存储为
密钥要快得多(对于您正在谈论的随机查找)。