1

コレクション内の映画に評価を割り当てるのに役立つ、ばかげた小さなスクリプトを書いています。並べ替えが必要な映画のタイトルがたくさんあります。マージソートのような再帰的アルゴリズムを適用して、映画を評価でソートしたいと思います。比較するたびに、ドキュメントのフォームを更新する必要があります。ユーザーは、AまたはB(2つのタイトルのうち良い方)を選択してから、[続行]ボタンをクリックします。この情報を使用して、並べ替えを続行します。プロセスの終わりまでに、ユーザーは、映画の順序付きリストを作成するために必要なバイナリ比較の質問の最小数に対してAまたはBに回答します。

私の問題:再帰的アルゴリズムに各ステップのフォームからの入力を待機させるにはどうすればよいですか?のようなものを使用するconfirm()と、入力が決定されている間、コードをブロックできますが、明らかにページ要素はこれを行うことができません。厄介なタイムアウト機能を使用する必要がありますか?ある種のグローバルな閉鎖を維持しますか?理想的には、「続行」ボタンをcontinueRecursion()コールバックにリンクさせたいのですが、これを行う方法がわかりません。

これを攻撃する方法について何か提案はありますか?

4

1 に答える 1

1

関数呼び出しの間に結果を保存するだけで、ルーチンを開始するのはユーザーになります。

そう:

  1. データを取得する
  2. 現在の選択
  3. ユーザーが選択すると、現在の選択 + 古いデータを並べ替えルーチンに渡します。
  4. 現在のデータをステップ 1 に並べ替えた後、もう一度続行します。

データをグローバルに保持するか、データを渡し続ける必要があります。

于 2012-06-15T19:30:42.850 に答える