JavaScript でアルゴリズムのアニメーションを作成する方法を理解しようとしています。より一般的な話ですが、他の言語 (Java など) ではアルゴリズムのアニメーションはどのように行われますか? アニメーションの側面は、アルゴリズム ロジックとは別のものですか? したがって、たとえば、並べ替えアルゴリズムが機能していて、問題のリストの状態を「監視」するだけの特別なアニメーションオブジェクトを作成するか、アニメーションオブジェクトに通知するアルゴリズムロジックのスニペットを作成します。リストを変更し、必要なアニメーション メソッドを呼び出しますか?
JavaScript に戻ると、場合によっては、動作するハフマン エンコーディング アルゴリズムを実装しました。私がやろうとしている唯一のことは、実際に何をしているのかを示すために付随するアニメーションを作成することです. これまでのところ、私のアプローチは、アニメーションにd3ライブラリまたは jquery を使用することです。私がこだわっているのは、アルゴリズム コードからアニメーション ルーチンを実際に呼び出す方法だけです。
JavaScript では、アニメーションが完了するまでコード行で実行を一時停止する (または待機する) ことは実際には不可能であることに気付きました。
この問題にアプローチする最善の方法について何か提案はありますか?
編集: たとえば、以下のコードは要素のキューを作成します。作成中のキューをアニメートしたいと思います。
var i,j;
var input = $('#input').val();
var input_array = input.split('');
for (i=0; i<input_array.length; i++){
var temp = new Node(input_array[i], 1);
for (j=i+1; j<input_array.length; j++) {
if (input_array[j] == input_array[i]) {
temp.frequency++;
input_array.splice(j, 1);
}
}
Queue.push(temp);
}