質問

ポイントの座標を表すタプルのリストがあります。最初に左から右に、次に上から下にポイントを並べ替えられるように、最初または2番目の値で並べ替えるにはどうすればよいですか?

役に立ちましたか?

解決

あなたが望むような音

myList |> List.sortBy fst

http://research.microsoft.com/en-us/um/cambridge/projects/fsharp/manual/FSharp.Core/Microsoft.FSharp.Collections.List.html

ただし、タプルは構造的な同等性と比較をサポートしているため、デフォルトのソート(辞書編集)で必要な処理を実行できます。

他のヒント

サイドノート:

これは並べ替えに関するものではありませんが、タプル座標を使用する場合は、設定。セットを使用することで、テトリスの実装を簡素化することができました。

 let sorted = List.sort_by (fun (a,b) -> a,b) myList

別の方法が必要な場合は、a、bを変更します

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top