問題タブ [set-intersection]

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 投票する
4 に答える
3531 参照

java - Java コレクションの差異または交差を計算するパフォーマンス

Java では、Collection インターフェースのおよびメソッドを介して、2 つの Collection オブジェクトの(集合論的) 差交差を計算できます。removeAll()retainAll()

Java 6のAbstractCollection クラスでのこれら 2 つのメソッドの実装は、

上記の(明らかに高価な)操作をより速く実装または実行する方法はありますか?

たとえば、差や交差を計算する前にコレクションをソートすると、全体的なパフォーマンスが向上しますか?

これらの操作を使用するために(パフォーマンス的に)好ましいコレクションフレームワークのクラスはありますか?

0 投票する
6 に答える
7680 参照

python - Pythonカスタムセットの共通部分

したがって、set.intersection()を使用して2つのセットの共通部分を計算する簡単な方法があります。ただし、次の問題があります。

(これObjectは、基本的な機能を実装するORMによって提供される基本クラスで__hash__あり、基本__eq__的にクラスのすべてのメンバーをハッシュに追加します。つまり、__hash__返されるのはクラスのすべての要素のハッシュになります)

.nameこの段階では、たとえば、を見つけるためだけに、集合交差演算を実行したいと思いますPerson('Bar', -1).intersection(union_list) #= [Person("Bar", -1), Person("Bar", 22), Person("Bar", 24)]。(この時点での典型的な.intersection()ものは私に何も与えません、これは元の集合和集合をオーバーライドするので、私はオーバーライドすることもクラス上で行うこともできません(__hash____eq__思うPerson

Python 2.xでこれを行うための最良の方法は何ですか?

編集:ソリューションはに依存する必要がないことsetに注意してください。ただし、ユニオンを見つけてから交差点を見つける必要があるので、これはセットに適しているように感じます(ただし、問題が解決する限り、価値があると思われる魔法を使用するソリューションを受け入れます!)

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

c++ - 重複した要素を含む減算ベクトル

std::vector重複した要素を含む sを減算するエレガントな方法はありますか?


例:

結果を次のようにしたい:


私の現在の(そして非常に遅い)解決策:

私の他のアイデアは次のとおりです。

しかし、これはちょっとエラーが発生しやすいので、私にはエレガントに見えません。

他のアイデアはありますか?

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

visual-c++ - set_intersection() と set を使用した VS2010 のエラー

set_intersection() 関数を使用しようとしています。私のコードは以下のようになります

ここでの問題は、行にあるようです

このサイトで見た他のページでの使用と比較して、これは正しいようです。コンパイル中に次のエラーが発生します

ここで何が欠けていますか?ありがとう。

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

c++ - 文字列の2つのリストを比較するC++

Python では、set は文字列の 2 つのリストを比較するのに非常に便利です (このリンクを参照してください)。パフォーマンスの点で C++ に適した解決策があるかどうか疑問に思っていました。各リストには 100 万を超える文字列が含まれているためです。

大文字と小文字を区別するマッチングです。

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

python - Python:2つのリストの共通部分に対応するインデックスを見つける

これは、私が今日少し前に尋ねた質問にいくらか関連しています。私は次のように2つのリストの共通部分を取っています:

私が交差している2つのコンポーネントは、2つの長いリストに属しています。交差する値のインデックスを取得することは可能ですか?(つまり、元のリストのインデックス)。

これからどこから始めたらいいのかよくわかりません。

どんな助けでも大歓迎です!

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

python - Python:交差点のインデックスを取得しようとしています

重複の可能性:
Python: 2 つのリストの共通部分に対応するインデックスを見つける

次のコード行があります。

上記の 2 つのコンポーネントの交差のインデックスを見つけようとしています。どちらも長いリストであり、いくつかの共通点があります。交差部分は完全に機能します。ただし、for ループは何も出力しないようです。(つまり、印刷されるものは何もありません)。

Python はエラーを出力しません。IPython でコードを実行すると、交差値に相当する「catdate」のインデックスをリストするのではなく、リスト「catdate」の最後の要素に i が相当することがわかります。

どんな助けでも大歓迎です!

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

c# - 交差点 - エンベロープ

Envelope[][] extents = new Envelope[][];施工しております。各エンベロープにはMinXMaxXMinYおよびMaxYプロパティがあり、グリッドの 1 つのタイル (左下と右上のポイント) を表します。今、私はと のEnvelope bounds;最小値と最大値を含むX-別のものを持っていますY-axisextentsと交差するタイルを取得したいbounds

を使用してこれを行う簡単な方法はありますEnvelope.Intersectか?

[編集]
今のところ、私はこの方法でそれを行いました (ブルートフォース xD):

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

c# - 交差点のインデックスを取得する

私は問題があります。以下のコードを使用して交差点を見つけています。

動作しますが、交差するエクステントのインデックスを取得したいです。


が交差する要素の 場合、 と を取得しextents[2][7]たい。27

私のコードを変更することで可能ですか?

[編集]

bounds内部に 、、およびプロパティEnvelopeを持つです。MinXMinYMaxXMaxY

0 投票する
6 に答える
9882 参照

python - の3つのセットの交差点?

現在、私は 3 つの集合の交点を見つけようとして立ち往生しています。これらのセットは実際にはリストであり、セットに変換し、その交点を見つけようとしています。

これが私がこれまでに持っているものです:

そして私は得ています

これを行うためのはるかに簡単で優れた方法があることは知っていますが、見つけることができません...

編集

さて、これが私が今持っているものです。

私が探しているものはまだ得られません。これは、各リストにあることを確認した 1 つの一致です。それは私にすべてのセットの追加のように見えるものを与えています.