問題タブ [sortedmap]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
java - Java:SortedMap、TreeMap、Comparable?使い方?
いずれかのフィールドのプロパティに従って並べ替える必要のあるオブジェクトのリストがあります。これを行うには、SortedMapとComparatorsが最良の方法だと聞きました。
- 並べ替えるクラスとComparableを実装しますか、それとも新しいクラスを作成しますか?
- SortedMapをインスタンス化してComparatorに渡すにはどうすればよいですか?
- 並べ替えはどのように機能しますか?新しいオブジェクトが挿入されると、すべてが自動的に並べ替えられますか?
編集: このコードは私にエラーを与えています:
(Ktrは実装しますComparator<Ktr>
)。Eclipseは、のようなものを期待していると言っているTreeMap<K, V>
ので、私が提供しているパラメーターの数が正しくありません。
java - 多くのソートされたマップを 1 つのソートされたマップにマージするパフォーマンスの向上 - java
入力として SortedMap を取得するメソッドがあります。このマップは多くの SortedMap オブジェクトを保持します。このメソッドの出力は、入力マップに保持されているマップのすべての要素を含む 1 つの SortedMap である必要があります。メソッドは次のようになります。
これはパフォーマンス キラーです。ここで何を改善できますか?
scala - ScalaのSortedMapsの和集合を形成するにはどうすればよいですか?
(私はScalaナイトリーを使用しており、2.8.0b1 RC4でも同じ動作が見られます。私はScalaの新参者です。)
SortedMap
結合したいものが2つあります。使用したいコードは次のとおりです。
ここでの考え方は、「暗黙の」ステートメントは、X
sをsに変換できることを意味し、マップだけでなく、sを別のにOrdered[X]
結合することは理にかなっています。SortedMap
SortedMap
コンパイルすると、
その型パラメータのバインドが。[A <% scala.math.Ordered[A]]
ではなく、である場合、私の問題はなくなるよう[A <: scala.math.Ordered[A]]
です。残念ながら、「注文した」メソッドがどこにあるのかさえわかりません。誰かが私がそれを追跡するのを手伝ってもらえますか?
それができない場合、2つのsの和集合を生成するために私は何をするつもりSortedMap
ですか?コンバインのリターンタイプを削除する(またはに変更するMap
)と、すべてが正常に機能します---しかし、リターンがソートされていることに依存することはできません!
scala - Scalaでソートされたマップを作成するにはどうすればよいですか?
Scala(可変/不変)でソートされたマップを作成するにはどうすればよいですか?
java - SortedMapよりも大きい最初の値を見つける
以下の例のすべての値をループするのではなく、大きなSortedMapで入力された値よりも大きい最初の値を見つけるためのより良い方法は何でしょうか。または、SortedMapがこれに使用するのに最適な構造である場合。
これはgoogle-collectionsを使用して達成できますか?前もって感謝します
java - ConcurrentSkipListMapの並べ替え:値のcompareToで実行できますか?
ゲームでは、ユーザーのリストを保持してスコアで並べ替えようとしているので、いつでもリストをクエリして、スコアで上位10人のユーザーを返すことができます。このリストはスレッドセーフである必要があります。userName文字列をキーとして使用することを想定しており、値はComparableを実装し、displayNameやscoreなどのプロパティを持つUserオブジェクトになります。したがって、Userオブジェクトには、スコア属性を比較してその位置を決定するcompareToメソッドがあります。
これにConcurrentSkipListMapを使用することを検討していますが、私が知る限り、Map(Setではなく)はキーを使用して並べ替えます。Userオブジェクトのscoreプロパティでリストを並べ替えたいのですが、特定のユーザーにアクセスしてスレッドからスコア属性を変更できる必要があるため、引き続きMapを使用します。
自分のコンパレータをキーに使用しても問題が解決するようには思えません。比較のために関連する値にアクセスできるとは思えないからです。ConcurrentSkipListSetを使用することもできますが、リストにアクセスして個々のユーザーのスコアを変更すると、(毎回繰り返す必要があるため)コストのかかる操作になります。
誰かがこれを達成する方法を提案することができますか?
java - キャスト TreeMap.Submap return: SortedMap、TreeMap に戻る
これは、私がこれを正しく行うにはトリッキーすぎるようです。
がありTreeMap<Double, (user-defined)Object>
、そのサブマップを取得しています:
これは期待どおりに機能しますが、ソートされたマップをキャストして戻すと(TreeMap)
、次のエラーが発生します。
どんな助けでも素晴らしいでしょう。
java - ソートされたComputingMap?
Guavaのコンピューティングマップの上にSortedMapを構築するにはどうすればよいですか(またはその逆)?ソートされたマップキーと、オンザフライで値を計算する必要があります。
java - 事前に並べ替えられたデータでTreeMapを初期化する方法は?
私のアプリはTreeMapを使用してデータを並べ替え、log(n)のルックアップと挿入を行います。これは、アプリの実行中の一般的なケースではうまく機能しますが、アプリを最初に起動するときに、ソートされた順序(昇順)で取得する数百万の長さでTreeMapを初期化する必要があります。
これらの初期化値はすでにソートされているので、ツリーの挿入と再バランスのlog(n)コストを支払うことなく、それらをTreeMapに挿入する方法はありますか?
python - Pythonの標準ライブラリにソートされたコンテナがないのはなぜですか?
ソートされたコンテナーがPythonに追加されないようにするPython設計決定(PEP)はありますか?
(OrderedDict
挿入順に並べられているため、ソートされたコンテナーではありません。)