問題タブ [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 - サブセットのリストからすべてのパーティションを検索します
次のような特定のサブセットのリストが与えられます
そして「宇宙」は次のように設定されます
Sからのセットで作られたUのすべての可能なパーティションを見つけるために使用できるエレガントでシンプルなアルゴリズムは何ですか?この例では、そのようなパーティションには次のものが含まれます。
等
algorithm - リストを 2 つの等しい部分に分割するアルゴリズム
関連する質問:
2k
正確に要素を含むリストがあるとしましょう。ここで、それを 2 つの部分に分割します。各部分の長さは ですが、部分k
の合計ができるだけ等しくなるようにします。
簡単な例:
[3, 4, 4, 1, 2, 1]
に分割される可能性が[1, 4, 3] and [1, 2, 4]
あり、差額の合計は1
ここで、パーツが任意の長さを持つことができる場合、これは分割問題のバリエーションであり、弱いことがわかっています。NP-Complete.
しかし、リストを等分に分割することに関する制限(常に
k
とであるとしましょう2k
) は、この問題を多項式時間で解決できるようにしますか? それに対する証拠はありますか(またはそれがまだであるという事実の証明スキームNP
)?
ruby - Rubyで一意にソートされたパーティションを生成する
以下に示すように、特定の順序ではなく、降順のシーケンスとして示されているシーケンスのセットを生成しようとしています。順列ではなく組み合わせに関心があるため、各シーケンスも下降することに注意してください。各シーケンスを配列として保存したいのですが、シーケンスのセットを配列の配列として保存したいのですが、まず最初に。
現在、私は単にこれらのセットの生成に焦点を合わせており、それを再帰的に実行しようとしています。基本的に、これらはすべて、組み合わせると合計が得られる数のシーケンスです。この場合は6です。ただし、最初の数が3の場合、後続の数のセットは、単に合計を与えるシーケンスのセットであることに注意してください。 3.言い換えると、6(ターゲット合計)-3(最初の数)= 3(合計3を与えるシーケンスのセット)。したがって、これを再帰的に実行できるはずです。
私は次のようにコーディングしようとしました(そして、はい、これは私の最初の言語であり、はい、私は約1週間しか勉強していないので、すべてが台無しになっていると確信しています)が、これまでのところ運がありません。再帰の核心を機能させ、すべてのオブジェクトの値を画面に表示して、行ごとにトレースできるようになれば、先に進むことができると思いますが、ロジックと構文の間では、じっとしている。
私の論理は次のとおりです。
- 対象となる合計を表す「count」を渡すメソッドを定義します。
- 与えられた値のシーケンスを保持する配列を作成します
- 配列内の位置を表すインデックスを作成します(ゼロ位置を無視します)。
- 'delta'を定義し、それを' count'の値に初期化し、配列の残りの残りのターゲット合計を表すようにします。(最初は配列に何もないため、デルタはカウントと同じです。)
次に、1から始まり、明らかに可能な最大値で終わるシーケンスの次の(最初の)値の可能性を循環します。これは「count」自体の値です。サイクル内の各値の新しいデルタを決定します。
デルタが0の場合は完了です。それ以外の場合は、この新しいデルタを与えるこの新しいシーケンスを決定します。新しいシーケンスを現在のシーケンスにも追加する必要がある可能性があります。
algorithm - 合計が等しい 2 つのサブセットを見つける際のエラー
合計が等しくなるように、配列を2つの空でない互いに素なサブセットに分割しようとしています。
バランスの取れたパーティションの問題に関する mit チュートリアルを読みましたが、制約が異なります。セット A 全体を考慮する必要はありません (つまり、A1 U A2 が A になる必要はありません)。また、別の問題は N の制限です。それぞれ最大 100 の個別の要素 (<= 100 ) があります。私の問題に関連するこの 投稿
も読み ましたが、何も得られませんでした。
説明 :
この方法ではばらばらなセットを処理できないことはわかっていますが、他のアプローチを見つけることはできません。
私はDynamic Progの学習段階にあります。と、やや難しいと思います。誰かが私の現在のアルゴリズムのエラーを見つけるのを手伝ってくれますか?
c++ - C++で複数の排他的な組み合わせを作成するのに問題がある
ユーザーに提示する必要のある順序付けられた文字列があります。
'B'で表されるオブジェクトにはタグが付けられ、2つのBの後に'〜'が付きます。
私はハワード・ヒナントの組み合わせライブラリを使用しましたが、この単純なケースでうまく機能します。私のテストコードは、for_each_combinationを介して送信されたintとして場所のベクトルを使用します。
ただし、Bに複数のタグがある場合はどうすればよいかわかりません。
たとえば、合計4Bにタグを付ける必要があります。2つは「〜」、2つは「#」です。
私が書き出した擬似コードはカスケードです。最初のfor_each_combinationの後、結果の組み合わせごとに、1つおきの場所を別のベクトルにコピーし、別のfor_each_combinationを実行します。
使用する組み合わせの数を考えると、もっと良い方法があることを願っています。
c++ - OpenCV:cv::Matのパーティション化
OpenCVを使用して、cv::Matをより小さなcv::Matに分割しようとしています。この方法をオンラインで見つけましたが、機能させることができません。たとえば640x480のcv::Matを、たとえば32 x 32のブロックに分割し、各ブロックを個別に操作したいと思います。
これが私のコードです。curr_frameには、画像全体がcv::Matとして含まれています。N_per_colとN_per_rowには、それぞれ列と行ごとのmb_szxmb_szブロックの数が含まれます。
これは正常にコンパイルされますが、実行時にtmp_imgにNULLピクセルでいっぱいの画像が表示されます。curr_frameは、imshow()で表示できるので、間違いなく問題ありません。
ドキュメントはこれについてあまり明確ではないので、どんな助けでも大歓迎です。
r - R: 事前定義されたサイズのビンへのサンプル (パーティション サンプル ベクトル)
可変数のビンにクラスター化された〜10 ^ 6値で構成されるデータセットに取り組んでいます。分析の過程で、クラスタリングをランダム化しようとしていますが、ビンのサイズは一定に保っています。おもちゃの例 (疑似コード) として、これは次のようになります。
だから、私は "partition.sample" のような関数を探しています。これはベクトル (seq(1,15) など) を取り、そこからランダムにサンプリングし、"サイズ」。
タスクはそれほど難しくないように思われるので、私はそのような関数を自分で作成しようとしています。ただし、ベクトルを特定のビンサイズに分割することは、「ボンネットの下」で行うと、はるかに高速かつ効率的になるように見えます。つまり、おそらくネイティブ R ではそうではありません。関数、または誰かが周りのスマートなソリューションを教えてくれるかどうか:-)
あなたの助けと時間は非常に高く評価されています! :-)
一番、
ライモンド
更新:
「ランダム化の回数」とは、「ランダム化ループ」全体を実際に実行した回数を意味します。これには、後で、実際のサンプリングだけでなく、より多くのステップが含まれることは明らかです。
さらに、上記の偉業を置き換えなしでサンプリングするためのトリックにも興味があります。
よろしくお願いします。
java - Java で subList を使用してデータを分割する
多数のインデックスを持つ ArrayList を実装したリストがあります。別のArrayListに分割したいと思います。私は
それが正しい分割方法かどうかはわかりません。パーティショニングの効率的な方法を教えてください。
[編集]
次のような配列リストがあります。
このリストは非常に長いです。上記のリストから小さいサイズなどのサブリストを取得したいと考えています。各リストには、重複しないリストが含まれます。
[]
[編集] null リストと混同しないでください。リスト内のリストの数を表示したかったのです。
python - Python パーティショニング関数には最適化が必要です
プロジェクト オイラー演習 (#78)の調査中に 、数を分割するためにベキ級数を作成できることを知りました。その系列から、用語係数を展開して使用して、特定の数を分割する方法の数を取得できます。
そこから、この小さな関数を作成しました。
これは比較的小さなパーティションでは問題なく機能しましたが、この演習ではうまくいきませんでした。おそらく再帰またはより高速なアルゴリズムでこれを高速化する方法はありますか? 五角形の数字を使用するとパーティションにも役立つ方法であるという場所をいくつか読んだことがあります。
この問題で実際の数値を返す必要はありませんが、1000000 で割り切れるかどうかを確認してください。
更新:五角数定理を使用することになりました。Craig Citro が投稿した Hardy-Ramanujan 漸近式を使用しようとしています。
performance - スペース分割アルゴリズムの速度
私はプロジェクトとして3Dゲームエンジンを開発しています。シーン内の三角形/ポリゴンごとにスペース分割アルゴリズムを使用して、衝突を効率的に検出したいと思います。(詳細のプログラミングを開始する前に)現代のコンピューターゲームの典型的なスペース分割アルゴリズムの速度を知りたいだけです。私は動的なオブジェクトを持っているので、フレームごとにシーンを再パーティション化する必要があるかもしれないと考えています。それは可能であり、それでも妥当なフレームレートを達成できますか?回答にデータ(FPS、ポリゴン数など)を含めることができれば非常にありがたいです。それがあまりにも面倒な場合は、フレームごとに再パーティション化するのが妥当かどうかを教えてください。
どんな助けでもいただければ幸いです。