私には2つのことをしなければならない関数があります:
n*n*n
配列をトラバースする- アレイの状態に応じてピンを更新します
この関数は繰り返し実行されます。
関数の作業を実行するための2つのアルゴリズムがあります。
まず、配列全体をトラバースし、複雑さ
Th(n**3)
を伴いますが、操作は最小限digitalWrite
で、おおよそTh(n)です(特定のピンの状態は隣接するピンの状態に依存するため)。次に、配列の一部をトラバースしてがありますが
Th(n**2)
、最大のdigitalWrite
操作がありTh(n**2)
ます。
私が持っている質問:
小さい
n
場合は、どちらのアプローチを取るかは重要ですか?digitalWrite
3次元配列アクセス操作と比較して、操作はどのくらい費用がかかりますか?(一方を最適化すると、もう一方への呼び出しが増加します。)