ホームページ >バックエンド開発 >PHPチュートリアル >プロセスアルゴリズムソリューション

プロセスアルゴリズムソリューション

WBOY
WBOYオリジナル
2016-06-13 12:01:26970ブラウズ

処理アルゴリズム
簡単な説明
配列を定義します。
配列のキーは現在のステップのIDを表し、値は次のステップのIDに対応します...
I新しい配列を生成したい
例:
array(1 => int 7
7 => int 11
8 => int 7
9 => int 8
10 => int 11
11 => int 12
12 => NULL
)
結果は
1=>7
7=>11
11=>12
12=>NULL
)
現在、開始ビットは 1 であることがわかっています。

アルゴリズムを見つけてください。 .

----- -解決策----------------------
この投稿は xuzuning によって最後に編集されましたon 2014-07-04 21:16:48

array (
$a = array(<br />  1 => 7,<br />  7 => 11,<br />  8 => 7,<br />  9 => 8,<br />  10 => 11,<br />  11 => 12,<br />  12 => NULL,<br />);<br />$i = 1;<br />while(isset($a[$i])) {<br />  $r[$i] = $a[$i]; <br />  $i = $a[$i];<br />}<br />$r[$i] = $a[$i]; <br />var_export($r);<br />
1 => 7,
7 => 11,
11 => 12,
12 => NULL,
)


-----解決策---------
<br />$map = array(<br />    1 => 7,<br />    7 => 11,<br />    8 => 7,<br />    9 => 8,<br />    10 => 11,<br />    11 => 12,<br />    12 => NULL<br />);<br /><br />function getroad($map){<br />    $key = 1;<br />    $result = array();<br />    while($key!=NULL){<br />        $result[$key] = $map[$key];<br />        $key = $map[$key];<br />    }<br />    return $result;<br />}<br /><br />$result = getroad($map);<br /><br />var_export($result);<br />


配列 (
1 => 7,
7 => 11,
11 => 12,
12 => NULL 、
)
声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。