問題タブ [complexity-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 に答える
782 参照

algorithm - ストリーム操作としての基数変換

一定の作業スペースで任意のサイズと任意のベース変換を行う方法はありますか? つまり、範囲内の一連の数値を、1 対 1 のマッピングを使用して範囲内の一連の数値に変換するには(必須でnはありませんが、望ましい) 辞書順を維持し、連続した結果を得るにはどうすればよいでしょうか?[1,m]ceiling(n*log(m)/log(p))[1,p]

パイプ関数として実行可能なソリューションに特に興味があります.eiは、RAMに保存できるよりも大きなデータセットを処理できます。

入力のサイズに比例する「作業スペース」を必要とする多くのソリューションを見つけましたが、一定の「作業スペース」を回避できるソリューションはまだありません。


シーケンシャル制約を削除しても違いはありますか? つまり、辞書順の連続した入力が非辞書順の出力になることを許可します。


いくつかの考え:

これはうまくいくでしょうか?

streamBase n -> convert( n, lcm(n,p)) -> convert( lcm(n,p), p) -> streamBase p

(ここでlcmは最小公倍数)

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

complexity-theory - あなたが作成した、または見た中で最も複雑な Web サイト / Web ページは何ですか?

あなたが作成した、または見た中で最も複雑/複雑な Web サイトまたは Web ページは何ですか?

何がそれをそれほど複雑または複雑にしたのですか?

0 投票する
15 に答える
5559 参照

algorithm - 仮説的に、P=NP 証明はどのようなものになるでしょうか?

特定の NP 完全問題に対する多項式時間アルゴリズムでしょうか、それとも NP 完全問題の解決策を示す抽象的な推論が存在するのでしょうか?

特定のアルゴリズムの方がはるかに役立つようです。これにより、NP 問題を多項式で解くために必要なことは、証明が解を持つ特定の NP 完全問題に変換することだけです。

0 投票する
32 に答える
67360 参照

theory - O(1/n) アルゴリズムはありますか?

O(1/n) アルゴリズムはありますか?

または、O(1) 未満のものはありますか?

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

heap - O(logn) 増加キーよりも優れた最小ヒープ?

最初にヒューリスティックに基づいて要素の優先度を決定する優先度キューを使用しています。要素がデキューされると、ヒューリスティックが更新され、現在キューにある要素のキーが増加する場合があります。

O(1) キーの減少操作を償却したヒープ (具体的にはフィボナッチ ヒープ) があることは知っていますが、キーの増加操作に同様の境界を持つヒープ構造はありますか?

私のアプリケーションでは、これはパフォーマンスの問題ではありません (バイナリ ヒープは正常に動作します)。これは、単に学術的な好奇心の問題です。

編集:明確にするために、キーを減らすのではなく、キーを増やす操作の時間が O(logn) よりも速いデータ構造を探しています。私のアプリケーションは、ヒューリスティックが優先度を過大評価するため、キーを減らすことはありません。

0 投票する
7 に答える
101676 参照

language-agnostic - O(N log N) 複雑さ - 線形に似ていますか?

そんな些細な質問で埋もれてしまうかと思いますが、ちょっと戸惑っています。

Java と C でクイックソートを実装し、いくつかの基本的な比較を行っていました。グラフは 2 つの直線として表示され、C は 100,000 のランダムな整数を超える Java の対応物よりも 4 ミリ秒高速でした。

結果

私のテストのコードはここにあります。

Android ベンチマーク

(n log n) の線がどのように見えるかはわかりませんでしたが、直線になるとは思いませんでした。これが期待される結果であり、コード内のエラーを見つけようとしないことを確認したかっただけです。

式をExcelに貼り付けたところ、基数10の場合、最初にねじれのある直線のようです。これは、log(n) と log(n+1) の差が直線的に増加するためですか?

ありがとう、

ガブ

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

sql - SQL を mySQL に凝縮する

MySQL でこのコードを単純化するにはどうすればよいですか?

計算された日付の数は動的ですか?

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

python - Pythonリスト関数の実行時の複雑さはどれくらいですか?

私はこのようなPython関数を書いていました

で呼び出されるように

リストのインデックス アクセスは であると想定していましたがO(1)、大きなリストの場合、これが予想よりも大幅に遅いことに驚きました。

私の質問は、Python リストがどのように実装されているか、および以下の実行時の複雑さはどのくらいかということです。

  • 索引付け:list[x]
  • 最後から飛び出る:list.pop()
  • 最初からポップ:list.pop(0)
  • リストの拡張:list.append(x)

追加のクレジット、スプライシング、または任意のポップ用。

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

c++ - さまざまな STL コンテナーの複雑さ (パフォーマンス) の比較はどこにありますか?

挿入/プッシュ消去/ポップなどのすべてのSTLコンテナの複雑さの違いを示す比較を見つけるために、私はかなり長い間グーグル検索しましたが、何も見つかりませんでした。また、私の STL ブックのすべてではありません。ヒントはありますか?

もちろん、いくつかの経験則は知っています。しかし、定義はどこにありますか?