問題タブ [set-theory]

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

c++ - 集合論のデータ構造

私は関数型プログラミングのバックグラウンドを持っており、(効率的な)C++データ構造には慣れていません。に示されているような複数の要素を保持するデータ構造が必要ですstruct element。コレクションでは、フィールドIDは一意である必要があります。

集合論のように非常に高速な集合比較を実行したい。たとえば、集合{x1,x2,x3}を比較するとき{x4,x5}に、交差集合{x5}(または{x2}この場合は等しい)を決定し、たとえばのような他の集合から集合を減算したい{x1,x2,x3} \ {x5} = {x1,x3}

C ++の世界に...「集合論的」データ構造はありますか?

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

mysql - 空のセットを作成する簡単な SELECT ステートメントはありますか?

指定された列で行がゼロの結果テーブルを作成する簡単で簡単な方法はありますか? 集合論ではこれを空集合と呼びますが、リレーショナル データベースでは多次元集合を使用するため、この用語は完全には当てはまりません。私はこれら 2 つのクエリを試しましたが、どちらも 0 行ではなく、正確に 1 行を提供します。

  • ID として '' を選択します。
  • null AS ID を選択します。

しかし、私が欲しいのは、このクエリと同じ結果です:

  • SELECT ID FROM sometable WHERE false;

テーブルを使用したくないため、より洗練された方法を探しているため、クエリはデータベーススキームから独立しています。また、一般的なクエリは少し高速になる可能性があります (そのようなクエリでは問題になりません)。

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

python - 2 つの順序付けられていないセット間の「距離」を計算する

2 つのセット (順不同、重複要素なし) を想定します。

これらのセットには、"z" と "x" の 2 つの共通要素と、セット固有の要素 c、d、e があります。

ストリング距離のように、各セットにスコアを与えるにはどうすればよいですか?

  • 要素の順序を無視し、
  • 孤立したセットごとに重複禁止の制約を課す

?

例でわかるように、各セットのサイズは異なる場合があります。

このアルゴリズムの重要でない要件は次のとおりです。

  • 挿入 > 削除 (要素が不足しているセットは、要素が多すぎるセットよりもコストが高いことを意味します) 可能であれば、または単に INS = DEL
  • スワップ: 0 (注文は距離に影響しないため、コストはかかりません)

今のところ、設定された距離スコアを計算しています。

この問題にどのようにアプローチするか、ソリューションを改善することをお勧めしますか?

コストを指定できるアルゴリズムはありますか?


今、集合変更のための単純な代数を定義しようとしています:

この値を何に対して正規化するにはどうすればよいですか?

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

java - 空集合の実装方法 - ∅?

0 投票する
5 に答える
1260 参照

c# - どうすれば無限集合クラスを実装できますか?

私は離散数学のクラスライブラリを設計していますが、無限集合を実装する方法を考えることはできません。

私がこれまでに持っているのは、インターフェイスISetを実装する抽象基本クラスSetがあります。有限集合の場合、各集合メソッドを実装するクラスFiniteSetを導出します。その後、次のように使用できます。

ここで、無限集合を表現したいと思います。セットから別の抽象クラスであるInfiniteSetを派生させるというアイデアがありました。その場合、ライブラリを使用する開発者は、独自のクラスを実装するためにInfiniteSetから派生する必要があります。N、Z、Q、Rなどの一般的に使用されるセットを提供します。

しかし、SubsetやGetEnumeratorなどのメソッドをどのように実装するのかわかりません。不可能だとさえ考え始めています。無限集合を実際的な方法で列挙して、別の無限集合と交差/結合できるようにするにはどうすればよいですか?コードで、NがRのサブセットであることをどのように確認できますか?そして、カーディナリティの問題に関しては..まあ、それはおそらく別の質問です。

これらすべてから、無限集合を実装するという私の考えはおそらく間違った方法であるという結論に至ります。ご意見をいただければ幸いです:)。

編集:明確にするために、私はまた、数え切れないほどの無限集合を表現したいと思います。

Edit2:最終的な目標はISetを実装することであるということを覚えておくことが重要だと思います。つまり、どのソリューションでもISetのすべてのメソッドを実装する方法を提供する必要があります。最も問題となるのは列挙メソッドとIsSubsetOfメソッドです。 。

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

set - ベキ集合と集合のデカルト積

ベキ集合と別の集合のデカルト積を明示的に記述する方法。

例: P({a,b})x{a,b}

現在 P({a,b}) = {{},{a},{b},{a,b}}

だから私は {{},{a},{b},{a,b}}x{a,b} を知る必要があります

0 投票する
5 に答える
102331 参照

mysql - SQLはベン図として結合します

私はSQLの結合を理解するのに問題があり、この画像に出くわした. 問題は、私がそれを完全に理解していないことです。たとえば、画像の右上隅にある結合では、B の円全体が赤く色付けされていますが、A からのオーバーラップのみが表示されています。この画像では、円 B が SQL ステートメントの主要な焦点であるように見えますが、SQL ステートメントはA から始める (A から選択し、B を結合する) こと自体は、私には反対の印象を与えます。つまり、A が sql ステートメントの焦点になるということです。

同様に、B サークルからのデータのみを含む下の画像では、なぜ A が結合ステートメントに含まれているのでしょうか?

質問: 右上から時計回りに作業し、中央で終了します。誰かが各 SQL イメージの表現に関する詳細情報を提供してくれますか?

a) それぞれの場合に結合が必要な理由 (たとえば、特に A または B からデータが取得されていない場合、つまり、両方ではなく A または B のみが色付けされている場合)

b)および画像がSQLの適切な表現である理由を明確にするその他の詳細

SQL結合図

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

c++ - C ++の再帰的和集合、共通部分、および相違

これは宿題ですが、どうすればいいのかよくわかりません。通常、v3 = v1を作成し、次にiを介してv2をインクリメントし、v2の要素がv3にあるかどうかを確認します。そうでない場合は、v3に追加します。しかし、メソッドの外部でv3を作成することはできません。メソッドの内部で作成しようとすると、それ自体がリセットされます。誰か助けてくれませんか?

これが私が彼らのために持っているコードとこれまでの彼らのラッパー関数です(それは単なるスケルトンです):

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

vba - セットを2つの互いに素なサブセット(すべての組み合わせ)に分割します

セットを定義しますA={1,2}A2つの互いに素なサブセットに分離できるBすべての可能な組み合わせを生成するにはどうすればよいCですか?n=2可能な組み合わせについては

これを一般化するにはどうすればよいnですか?できればVBAで(または他の言語でもかまいません)。

ありがとうございました。