問題タブ [data-partitioning]
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.
algorithm - 3D クラスタリング アルゴリズム
問題の説明: 次の問題があります。
3D 空間には 10 億を超えるポイントがあります。目標は、与えられた距離 R 内に最大数の近傍点を持つ上位 N 個の点を見つけることです。別の条件は、これらの上位 N 個の点の任意の 2 点間の距離が R よりも大きくなければならないということです。これらの点の分布は均一ではありません。空間の特定の領域に多くの点が含まれることは非常に一般的です。
目標: 多くのプロセッサに適切にスケーリングでき、メモリ要件が小さいアルゴリズムを見つけること。
考察: 通常の空間分解は、不均一な分布のため、この種の問題には十分ではありません。ポイントの数を均等に分割する不規則な空間分割は、問題を解決するのに役立ちます。誰かがこの問題を解決する方法に光を当てることができれば、本当に感謝しています。
algorithm - セット (グラフ) パーティションのペア間の遷移数のアルゴリズム
グループに分割されたセット (またはグラフ) があるとします。2 つのパーティション間の遷移の数を見つけることに興味があります。遷移には、1 つのパーティションから要素を取り出して別のパーティション (またはシングルトン パーティション自体) に移動することが含まれます。
たとえば、パーティション間に 1 つの遷移があります。
1 2 | 3
と 1 | 2 | 3
しかし ~の1 2 3 4
間1 2 | 3 | 4
トランジションの最小数は 2 だと思います。
私の質問は、パーティションのペアとセットを指定して、それらの間の遷移状態の数を返すことができるアルゴリズムはありますか?
このセットが実際にはグラフを表すというさらに複雑な問題があり、すべてのパーティション (および遷移パーティション) を接続する必要があります (つまり、3 によってブロックされていない 1 と 2 の間に間接接続または直接接続が存在しない場合、1 2 | 3 は無効になります)シングル パーティション) ですが、このトピックについて本当に理解していない限り、おそらくそれを無視することができます。
ありがとう
メモとして、私は自分で考えた方法を持っています。これは、基本的にパーティション A のすべての隣接 (つまり、1 つの遷移内で見つけることができるすべてのパーティション) を見つけ、パーティション B に対して同じことを行い、これらがこれらの間に重複している場合隣接する 2 つのセットがある場合、それらは 1 つの遷移先にあります。ただし、この方法はすぐに非常に高価になります。
geometry - ラインを等分に分割
これは幾何学の質問です。
2 つの点 A と B の間に直線があり、それを k 等分したいと考えています。A と B の間の線を分割する点の座標が必要です。
どんな助けでも大歓迎です。
どうもありがとう!
python - 条件を満たしているシーケンス項目と満たさないシーケンス項目の結果タプルを取得する最も効率的で効率的な方法
(これはプロのベスト プラクティス/パターンの関心であり、在宅ワークの要求ではありません)
INPUT : 任意の順序付けられていないシーケンスまたはジェネレーター項目、関数myfilter(item)は、フィルター条件が満たされている場合に True を返します
OUTPUT : (filter_true, filter_false)元のシーケンス順でフィルターに従って分割された要素を含む、元の型のシーケンスのタプル。
二重フィルタリングを行わずにこれをどのように表現しますか、または二重フィルタリングを使用する必要がありますか? たぶん、フィルターとループ/ジェネレーター/リストの理解next
が答えになるでしょうか?
タイプを保持する要件を取り除くか、タプル/ジェネレーターの結果のタプルを与える要件を変更する必要がありますか?ジェネレーター入力に対してジェネレーターを簡単に返すことはできませんか? (要件は自作です)
タプルの代わりに2つのストリームを提供する、現時点での最良の候補のここでのテスト
algorithm - Matlabパーティションの問題
私の頭は私の問題のアルゴリズムを見つけるのに行き詰まります。
N
数字(たとえば4)があり、すべてのXパーティション(X = N / 2)が必要だとします。
例:
2-{1,2,3,4}のパーティションは次のとおりです。(1,2)(1,3)(1,4)(2,3)(2,4)(3,4)[単純に:すべての組み合わせ]
これらの組み合わせを生成する方法がわかりません。あなたの誰かがマインドでアイデアを持っている場合(私はどの言語を気にしません。擬似コードは完全に十分です。それが反復的であるか明示的であるかは気にしません)。
よろしく、Bigbohne
r - Rで値のセット(ベクトル)を分割する方法
私はRでプログラミングしています。たとえば、1000個の値を含むベクトルがあります。ここで、これらの1000個の値をランダムに2つの新しいセットに分割したいとします。1つは400の値を含み、もう1つは600を含みます。これを行うにはどうすればよいですか。私はこのようなことをすることを考えました...
...しかし、これはデータを分割しません(言い換えると、他のセットに入れる600の値がまだわかりません)。また、1から400にループし、一度に1つの値をランダムに削除して、に配置することも考えましたfirstset
。これによりデータが正しく分割されますが、これを実装する方法は私にはわかりません。for
さらに、可能な限りRのループを避けるように言われました。
何か案は?
algorithm - 固定長整数パーティションのすべての一意の順列を生成するアルゴリズム?
整数の固定長パーティションのすべての順列を生成するアルゴリズムを探しています。順序は関係ありません。
たとえば、n=4および長さL=3の場合:
私は整数パーティション+長さがLより短いパーティションの順列でぶつかりました。しかし、同じパーティションを複数回取得したため、速度が遅すぎました(;-[0, 0, 1]
の順列である可能性がある[0, 0, 1]
ため)
どんな助けもありがたいです、そしていいえ、これは宿題ではありません-個人的な興味:-)
c++ - 再帰的分割(数論)関数の問題
例:ユーザー入力が6であるとしましょう。その場合、合計で6になるシーケンスの数は11です(6自体を含む)。私が抱えている問題は、ユーザーが1または6を入力したときに機能することですが、そうでない場合はかなり離れており、理由がわかりません。
必要に応じて、このテーマに関する詳細情報を提供できます。
java - N 個の要素を持つ 1 次元配列のすべての k パーティションを列挙しますか?
これは単純な要求のように思えますが、「パーティション」はデータベースとファイルシステムのスペースで多数のヒットを記録するため、Google は私の友人ではありません。
N 値 (N は定数) の配列のすべてのパーティションを k サブ配列に列挙する必要があります。サブ配列はまさにそれです-開始インデックスと終了インデックス。元の配列の全体的な順序は保持されます。
たとえば、N=4 で k=2 の場合:
k=3 の場合:
これは元の問題ではないと確信しています (いや、宿題ではありません) が、すべての k <= N に対して実行したいと思います。 ) 以前の結果を利用しました。
リンクがある場合は、共有してください。
python - 2つの出力リスト(つまり、リストのパーティション)を取得するfilter()と同等のPython
リストとフィルタリング機能があるとしましょう。次のようなものを使用する
基準に一致する要素を取得できます。一致する要素の1つと残りの要素の1つである2つのリストを出力する関数を使用できますか?関数を2回呼び出すこともできますfilter()
が、それはちょっと醜いです:)
編集:要素の順序は保存する必要があり、同じ要素を複数回持つ可能性があります。