2009-04-30 18 views
5

में टुपल्स सॉर्ट करना मेरे पास बिंदुओं के निर्देशांक का प्रतिनिधित्व करने वाले टुपल्स की एक सूची है। मैं उन्हें पहले या दूसरे मूल्य से कैसे क्रमबद्ध कर सकता हूं, ताकि मैं अपने अंक बाएं से दाएं पहले और ऊपर से नीचे तक ऑर्डर कर सकूं?एफ #

उत्तर

5

लगता है जैसे आप चाहते हैं उदा।

myList |> List.sortBy fst 

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

लेकिन tuples संरचनात्मक समानता और तुलना, तो डिफ़ॉल्ट सॉर्ट (lexicographical) तुम क्या चाहते हो सकता है समर्थन करते हैं।

+1

sort_by बाद में इसका नाम बदला गया –

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

बदलें एक, आप अन्य तरीके की आवश्यकता है, तो ख के आसपास

1

साइड नोट:

यह छँटाई के बारे में नहीं है, लेकिन अगर आपके का उपयोग कर tupled निर्देशांक आप के बजाय एक Set उपयोग कर सकते हैं एक सूची का। एक सेट का उपयोग करने से वास्तव में मुझे Tetris के कार्यान्वयन को सरल बनाने में मदद मिली।