問題タブ [comparator]

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.

0 投票する
2 に答える
517 参照

c# - 複雑な区切り文字に基づいて文字列を分割する必要があります

C#では、文字列(log4jログファイル)を特定の文字シーケンス、つまり「nnnn-nn-nn nn:nn:nnINFO」に基づいて配列要素に分割する必要があります。現在、このログファイルを改行で分割しています。これは、ログステートメント自体に改行が含まれている場合を除いて問題ありません。

私は入力(ログファイル)を制御しないので、どういうわけかそれらをエスケープすることはオプションではありません。

コンパレータまたは正規表現を使用して文字列を識別できるはずですが、String.Splitにはそのようなオプションはありません。

私は自分自身を転がして立ち往生していますか、それともここで役立つパターンまたはフレームワークコンポーネントがありますか?

0 投票する
1 に答える
550 参照

java - Comparator がバブリング アップまたはバブリング ダウンしているときに Comparator が例外をスローすると、PriorityQueue はどうなりますか?

両方のエントリが他のペアのエントリよりも厳密に小さい場合はペアが別のペアよりも小さく、両方のエントリが他のペアのエントリよりも厳密に大きい場合は他のペアよりも大きいと見なされる整数のペアを優勢に並べ替えようとしています。ペア。他のすべてのケースは、比類のないものと見なされます。

私がこれを解決したいのはComparator、上記を実装する a を定義することですが、比較できない場合には例外をスローし、それを a に提供しPriorityQueueます。もちろん、ペアを挿入している間、優先キューは新しいエントリをヒープ内の正しい位置までバブリングしながらいくつかの比較を行います。これらの多くは比較できます。ただし、バブリング プロセス中に、この新しいペアとは比較にならないペアが検出され、例外がスローされる場合があります。これが発生した場合、の状態はどうなりますPriorityQueueか? 挿入しようとしていたペアは、例外がスローされる前の最後の位置でヒープに配置されますか? PriorityQueue's remove(Object o)この方法を使用するPriorityQueueと、一貫した状態に復元されますか?

ありがとう

0 投票する
3 に答える
962 参照

c++ - リストの左端と右端のポイントを見つける。std::find_if 正しい方法は?

Point オブジェクト (それぞれ x、y プロパティを持つ) のリストがあり、左端と右端のポイントを見つけたいと考えています。私はfind_ifでそれをやろうとしてきましたが、コンパレータインスタンスを渡すことができないように見えるので、その方法がわかりません。find_if は行く方法ですか?そうではないようです。<algorithm>それで、これを達成するためのアルゴリズムはありますか?

前もって感謝します。

0 投票する
3 に答える
2965 参照

java - Java Collections Sort は引数付きのコンパレータ コンストラクタを受け入れません

次の行でコンパイラ エラーが発生します。

Collections.sort(terms, new QuerySorter_TFmaxIDF(myInteger));

私のカスタマイズした Comparator はかなり基本的なものです。署名とコンストラクターは次のとおりです。

}

Comparator に引数を渡しているためにエラーが発生していますか? 引数を渡す必要があります...

0 投票する
2 に答える
134 参照

c++ - C++ 変更ソート方法

重複の可能性:
C++ 構造体の並べ替え

コンパレータを取るJavaのCollections.sortで使用されるように、指定されたソート方法に従ってC++でベクトルをソートすることは可能ですか?

0 投票する
3 に答える
10658 参照

java - Java プライオリティ キューの実装

PriorityNode は次のように定義されています。

ここで Comparator を使用し、プライオリティ キューを実装するのが非常に困難です。正しい方向を教えてください。

0 投票する
2 に答える
45645 参照

java - カスタム Comparator を使用して Java で SortedMap を作成する

TreeMapカスタムソート順で Javaを作成したいと考えています。文字列であるソートされたキーは、2 番目の文字に従ってソートする必要があります。値も文字列です。

サンプル マップ:

0 投票する
4 に答える
5745 参照

c++ - C ++文字列は人間のようにソートされますか?

英数字の文字列は、人間が並べ替えるのと同じように並べ替えたいと思います。つまり、「A2」は「A10」の前にあり、「a」は確かに「Z」の前にあります。ミニパーサーを作成せずに処理する方法はありますか?理想的には、「A1B10」の前に「A1B1」も配置します。「MicrosoftSQL2005での自然な(人間の英数字)並べ替え」という質問に答えられる可能性がありますが、 「IComparerを使用した人間の文字列の並べ替え」と同様に、さまざまなライブラリ関数を使用しています。

以下は、現在失敗しているテストケースです。

0 投票する
29 に答える
1233939 参照

java - カスタム オブジェクトの ArrayList をプロパティで並べ替える

Comparator を使用して ArrayLists をソートすることについて読みましたが、人々が使用したすべての例で、compareToいくつかの調査によると Strings のメソッドです。

カスタム オブジェクトの ArrayList を、そのプロパティの 1 つである Date オブジェクト ( ) で並べ替えたいと考えていましたgetStartDay()。通常はそれらを比較するitem1.getStartDate().before(item2.getStartDate())ので、次のようなものを書くことができるかどうか疑問に思っていました:

0 投票する
4 に答える
6440 参照

c# - IEnumerableを比較するための組み込みの方法はありますか(それらの要素によって)?

特定のタイプの要素のリストを比較して、どのリストが「大きい」かを確認したいと思います。

...1を返します

...-1などを返します

そのような組み込みの比較器はありますか?