データベースにテーブルがあり、色を16進形式で保存する興味深いケースがあります。このテーブルにクエリを実行し、データベースから異なる色のリストを取得します。たとえば、8行10列などの「マトリックススタイル」でユーザーにクエリ結果を表示する必要があります。ただし、結果のマトリックスは、隣接するアイテム マトリックス アイテムで同じまたは類似の色相を持つべきではありません。それを行う最良の方法は何ですか?
2 に答える
1
非常に単純なアルゴリズムから始めることができます。
- すべての色をランダムに配置します
- 悪いエントリ(つまり、色が隣人とあまり変わらないエントリ)を見つけます
- このエントリを別のランダムな場所と交換します(ただし、交換によって状況が改善される場合のみ)
- 数回繰り返す
于 2012-07-24T19:45:36.997 に答える
1
平面グラフの頂点カラーリングを行っています。良いニュースは、グラフは平面であるため、実際には 4 色しか必要ないということです。悪いニュースは、カラーリングを見つけるのが必ずしも簡単ではないということです。ただし、グラフが常にそのサイズである場合は、バックトラッキングを使用した再帰的なソリューションでおそらく十分です。
于 2012-07-24T23:03:45.823 に答える