例として、私は1000のBananaTreeオブジェクトで満たされたbananaTreeArrayを持っています。これらの各BananaTreeオブジェクトには、Bananasというパブリックプロパティがあります。最もバナナのある5つのバナナツリーを見つけるための最も速い/最も簡単な方法は何ですか?プロパティの値によってオブジェクトのarraylistをソートする最速の方法
答えて
ArrayList
ではなく、一般的で強く型付けされたList(Of T)
(この場合はList(Of BananaTree)
)を使用しないでください。そして、それはLINQで簡単です:
Dim top5Bananas = From btree In bananaTreeArray
Order by btree.Bananas Descending
Take 5
それは本当にあなたがすべてのオブジェクトにキャストする必要がArrayList
だ場合:
Dim top5Bananas = From btree In bananaTreeArray.Cast(of BananaTree)()
Order by btree.Bananas Descending
Take 5
をすることはできいずれかのループFor Each
またはリスト/配列を作成し、Feがこのクエリ:
Dim top5BananaList = top5Bananas.ToList()
これに基づいて 'Dim top5Bananas = btree.OrderByDescending(function(b)b.Bananas).Take(5)'を使用できます。 –
@KeithMifsud:はい、それはメソッド構文ですが、実際の違いはありません。私はしばしばVB.NETのクエリー構文を好んでいます。なぜなら、C#では、 'Take'がサポートされています)より読みやすく(醜い' Function'キーワードのために)より強力です。 –
はい、どちらも同じことをしていますが、私はOPに両方の選択肢が提示されるように投稿しました。個人的には、複雑なクエリでは、メソッド構文が私にもっと役立ちます:) –
- 1. オブジェクトのarraylistをソートする方法java?
- 2. プロパティ別のソートarraylist
- 3. 複数のプロパティ(PS)によってarraylist内の一意のオブジェクト
- 4. ソートArrayListのアルファベット順に値によって
- 5. そのキーの値によってオブジェクトをソートするjQueryの
- 6. オブジェクトArrayListをJavaの属性値でソート
- 7. クラスのオブジェクトの配列をクラスの数値プロパティに従ってソートする方法
- 8. ArrayListオブジェクトの特定の値を使用してArrayListをソートしますか?
- 9. JavaのオブジェクトのArrayListをソート
- 10. ArrayListをソートする方法
- 11. 派生計算によってオブジェクトをソートする方法は?
- 12. オブジェクトのプロパティに従ってJava ArrayListを並べ替えます
- 13. プロパティの値でオブジェクトのリストをソート
- 14. ArrayList(Java)のオブジェクトの一部に基づいてArrayListをソートする方法がわからない
- 15. プロパティ値の計算でJavascriptオブジェクトをソート
- 16. オブジェクトのプロパティをソート
- 17. arrayList内のオブジェクトをどのようにソートできますか?
- 18. オブジェクトの複数のプロパティをソートする方法 - linq4j
- 19. 配列をソートする最速の方法C#
- 20. Pythonでalgoをソートする最速の方法
- 21. 2dリストを逆順で列でソートする最速の方法
- 22. SqlDataReaderの結果をオブジェクトにマップする最速の方法
- 23. ArrayListソート方法に基づいて
- 24. 値のオブジェクトの1つの2 arraylistを比較する方法
- 25. ArrayListで最大値を得る方法
- 26. アルファベット順に複雑なオブジェクトのソートarraylist
- 27. オブジェクト値でオブジェクトの配列をソートする方法は?
- 28. 最長私は、オブジェクトのArrayListを持っている車両
- 29. どのように効率的に各ArrayListの特定の値でArrayListのArrayListをソートできますか?
- 30. CSSプロパティを設定する最速の方法は?
最大の番号を検索する場合は、並べ替える必要はありません。 –
これ以外の方法でこれを行うことはできますか? –
いくつかの例があります[ここ](http://stackoverflow.com/questions/4956593/optimal-algorithm-for-returning-top-k-values-from-an-array-of-length-n)、[ここに](http://stackoverflow.com/questions/32395648/largest-5-in-array-of-10-numbers-without-sorting)と[here](http://stackoverflow.com/questions/4084495/find配列内の-top-n-elements)。 –