三目並べを実装するための独自のアルゴリズムを考えていました。それはシステムに対するコンピューターになるでしょう。私が実装しようと思ったアルゴリズムは、ユーザーの選択された各ノードのすべての勝者ノードを含むハッシュマップです。システムは、ユーザーが選択したキーのハッシュマップをポーリングし、勝った移動の選択肢の1つをランダムに選択します。ユーザーまたはシステムによって以前に選択された選択肢は、削除するか、ブール値trueとして設定できます。これは主にブロッキングベースのアルゴリズムです。これについての考えやコメントは大歓迎です。
システムハッシュマップ
<1,<2,3,4,7,5,9>>
<2,<1,3,5,8>>
<3,<1,2,6,9,5,7>>
<4,<1,7,5,6>>
<5,<2,8,4,6>>
<6,<3,9,5,4>>
<7,<1,4,8,9,5,3>>
<8,<2,5,7,9>>
システムは、ユーザーのキー選択に基づいて、ハッシュマップのエントリの1つをランダムに選択します。これはあまりスケーラブルなアプローチではないことは知っていますが、これについていくつかコメントを知りたいと思います。システム/ユーザーによってすでに選択されている各エントリは、falseとして設定/削除できるため、おそらく問題にはなりません。