コンピュータサイエンス

コンピュータサイエンスの学生、研究者、実務家のためのQ&A


2
一部の要素が他の要素の間に入らないように要素を順序付けする
整数所与と異なる整数のトリプレットの集合 S ⊆ { (I 、J 、K )| 1 ≤ iが、J 、K ≤ N 、I ≠ J 、J ≠ K 、I ≠ K } 、 そのいずれかのアルゴリズムを見つけます。発見A順列π組の{ 1 、2 、... 、N }、その結果 (InnnS⊆{(i,j,k)∣1≤i,j,k≤n,i≠j,j≠k,i≠k},S⊆{(i,j,k)∣1≤i,j,k≤n,i≠j,j≠k,i≠k},S \subseteq \{(i, j, k) \mid 1\le i,j,k \le n, i \neq j, j \neq k, i \neq k\},ππ\pi{1,2,…,n}{1,2,…,n}\{1, …

3
ワトソン・クリックの回文を認識するスペースの複雑さ
次のアルゴリズムの問​​題があります。 Watson-Crickの回文であるDNA文字列を認識する複雑な空間チューリングを決定します。 Watson-Crickパリンドロームは、元のストリングが逆補数のストリングです。補体は、 DNAに触発、文字ごとに定義される:AはTの補数であり、Cは、ACGT WC-ドロームためG. Aの単純な例の補数です。 これを解決するには2つの方法があります。 1つはスペースを必要とします。O(n)O(n)\mathcal{O}(n) 機械が完了したら、入力を読み取ります。入力テープは、逆の順序でワークテープにコピーする必要があります。 次に、マシンは入力とワークテープを左から読み取り、各エントリを比較して、ワークテープのセルが入力のセルの補数であることを確認します。これにはスペースが必要です。O(n)O(n)\mathcal{O}(n) もう1つにはスペースが必要です。O(logn)O(log⁡n)\mathcal{O}(\log n) 入力の読み取り中。入力テープのエントリ数をカウントします。 入力テープが読み終わったら 文字の補数を作業テープにコピーします 文字Lを作業テープの最後にコピーします (ループポイント)カウンター= 0の場合、ワークテープをクリアして「yes」と書き込み、停止します 入力テープがLを読み取る場合 カウンターで示された回数だけ入力ヘッドを左に移動します(2番目のカウンターが必要)。 入力テープがRを読み取る場合 カウンターで示された回数だけ入力ヘッドを右に移動します(2番目のカウンターが必要)。 ワークテープの値を保持するセルが入力テープの現在のセルと一致する場合 カウンターを2減分する RまたはLがそれぞれワークテープにあるかどうかに応じて、1つを左または右に移動します。 LまたはRの補数を現在のLまたはRの代わりにワークテープにコピーする ループを続ける 値が一致しない場合は、ワークテープをクリアして「いいえ」と書き込み、停止します 2logn+22log⁡n+22\log n+2 私の問題 最初のものは線形時間と空間の両方を必要とします。2番目にはが必要ですn22n22\frac{n^2}{2}lognlog⁡n\log n 私が混乱している理由 2番目の方法は時間の点で優れているので、2番目の方法が最良の選択肢であると思う傾向がありますが、その答えは私が幸運になってアルゴリズムを考え出すことによってのみ得られます。スペースに複雑さを与えたいのであれば、正しいアルゴリズムを思いつくのに運は必要ないようです。何か不足していますか?スペースの複雑さを解決するための問題の解決策を考え出す必要さえありますか?

7
TCSについてあまり知らない人のためのTCSの紹介本のリスト[終了]
現在のところ、この質問はQ&A形式には適していません。回答は事実、参考文献、専門知識によって裏付けられると期待していますが、この質問では、議論、議論、投票、または拡張ディスカッションが求められる可能性があります。この質問を改善でき、再開できると思われる場合は、ヘルプセンターにアクセスしてください。 8年前休業。 オートマトン理論、アルゴリズム、複雑性理論など、入門レベルでTCSについて詳しく知りたい人に本を勧める必要がある場合、興味のある人や詳細を知りたい人にどの本を勧めますかTCS、しかしそれへの接触はありませんでしたか?
10 education 

4
有限の言葉の決定不可能な有限の言語はありますか?
そこにあるの必要性のためのL⊆Σ∗L⊆Σ∗L\subseteq \Sigma^*であることを無限に決定不能であることが? 私たちは、言語を選択した場合、私は何を意味L′L′L'ことの有界有限バージョン L⊆Σ∗L⊆Σ∗L\subseteq \Sigma^*で、|L′|≤N|L′|≤N|L'|\leq N、(N∈NN∈NN \in \mathbb{N}を有する)、L′⊂LL′⊂LL' \subset L。L′L′L'が決定不可能な言語になることは可能ですか? 「有限の」Kleeneスター演算の一種であるL 'の最初の要素となるものを選択するためのルールを確立する必要があるNNN単語を選択する方法」の問題があることがわかります。目的は、無限のセットを必要とせずに決定不能な言語を見つけることですが、私にはわかりません。∈∈\in L′"L′"L' "NNNL′L′L' ノートの編集: 私は答えを選びましたが、多くの答えとすべてのコメントが重要です。

1
PとP / polyはどうして同じではないのですか?
Pの定義は、多項式時間アルゴリズムによって決定できる言語です。P / polyの定義は、多項式サイズの回路によって決定できる言語を意味すると解釈できます(http://pages.cs.wisc.edu/~jyc/02-810notes/lecture09.pdfを参照)。さて、なぜ多項式サイズの回路を多項式時間でシミュレーションできないのでしょうか?

3
隣接行列の固有値の背後にある直観
私は現在、チーガーバウンドとチーガーの不等式の使用、およびスペクトル分割、コンダクタンス、拡張などへのそれらの使用を理解するために取り組んでいますが、隣接行列の2番目の固有値に関する直感の開始にまだ苦労しています。 通常、グラフ理論では、私たちが遭遇するほとんどの概念は非常に単純で直感的ですが、この場合、どのようなグラフで2番目の固有値が非常に低いか非常に高いかを考え出すこともできません。 SEネットワークのあちこちで尋ねられた同様の質問を読んでいますが、それらは通常、さまざまなフィールドの固有値(多変量解析、ユークリッド距離行列、相関行列 ...)を参照しています。 しかし、スペクトル分割とグラフ理論については何もありません。 誰かがグラフと隣接行列の場合に、この2番目の固有値の直感/経験を試して共有できますか?

4
NSPACE(O(n))の言語で、DSPACE(O(n))にはない可能性が高い
実際、状況依存言語のセット(受け入れ言語)は(通常の言語)ほど広く議論されていないことがわかりましたまたは(コンテキストフリー言語)。また、未解決の問題は、「類似の」問題ほど有名ではありません: " "。= N S P A C E (O (n ))= L B A R E G C F L D S P A C E (O (n ))= ?N S P A C E (O (n ))P = ?N PC S LCSL\mathbf{CSL}= N S P A C E …


5
有限の有限の文字列セットを指定して文法を構築する既知の方法はありますか?
私の読書から、ほとんどの文法は無数の文字列を生成することに関係しているようです。逆に作業するとどうなりますか? 長さがmのn個の文字列が指定されている場合、それらの文字列を生成する文法を作成し、それらの文字列だけを作成することが可能です。 これを行うための既知の方法はありますか?理想的には、私が研究できる技術名です。あるいは、そのような方法を見つけるために文献検索をどのように行えばよいでしょうか?

2
ランクなしのパス圧縮を使用したunion-findの複雑さ
ウィキペディアはパス圧縮なしのランク別組合はの償却時間複雑与え言い、そしてランクとパス圧縮することにより、両方の労働組合は、の償却時間複雑与えることをO (α (N ))(αはの逆であるがアッカーマン関数)。ただし、ユニオンランクなしのパス圧縮の実行時間については触れていません。これは、私が通常自分で実装するものです。O(logn)O(log⁡n)O(\log n)O(α(n))O(α(n))O(\alpha(n))αα\alpha パス圧縮最適化を使用して、ランク最適化による結合を使用しない場合のunion-findの償却時間の複雑さはどのくらいですか?

3
正規表現は無限にできますか?
正規表現を使用して定義できる言語とDFA / NFA(有限オートマトン)で認識できる言語は同等であることを知っています。また、言語のDFAも存在しません{0n1n|n≥0}{0n1n|n≥0}\{0^n1^n|n \ge 0\}。しかし、それでも、正規表現を使用して(つまり、非正規言語を使用できます)、{ ϵ } ∪ { 01 } ∪ { 0011 }として記述できます。。。。。。{ϵ}∪{01}∪{0011}......{ϵ}∪{01}∪{0011}......\{ \epsilon \} \cup \{01\} \cup \{0011\}......。しかし、正規表現を持つすべての言語には、それを認識するDFAがあることがわかっています(以前のステートメントとは矛盾します)。これは簡単なことですが、正規表現の定義には、有限であるべきという条件が含まれていますか?

2
誰かがこの図をスラブ割り当てについて説明できますか?
スラブ割り当ての仕組みと、通常のページングとは異なる、または優れている理由を理解しようとしています。 私は、この図見つけ、私はそれがより説明があった場合には参考になると信じています。 いくつかの質問: 3KBと7KBのアイテムは何を表していますか?彼らはどういうわけか関連している必要がありますか?なぜそれらはそのようにパッケージ化されているのですか? キャッシュ列で、キャッシュは灰色のボックスですか、それとも灰色のボックス内の白/青のボックスですか?灰色のボックスはキャッシュのパッケージですか? スラブは単なる青いボックスですか、それとも「物理的な隣接ページ」全体がスラブですか? 私は本当にいくつかの助けに感謝します。ありがとう!

1
GPUでの比較がなぜそれほど高価なのですか?
衝突検出クラスのパフォーマンスを向上させようとしているときに、gpuで費やされた時間の約80%がループするバケットの境界を把握しようとするif / else条件に費やされたことがわかりました。 より正確に: 各スレッドはIDを取得し、そのIDによってメモリから三角形(それぞれ3つの整数)をフェッチし、それらの3つによって頂点をフェッチします(それぞれ3つの浮動小数点数)。 次に、頂点を整数グリッドポイント(現在は8x8x8)に変換し、それらをそのグリッドの三角形の境界に変換します。 3つのポイントを境界に変換するために、各ポイント間で各次元の最小/最大を見つけます 私が使用しているプログラミング言語にはminmax組み込み関数がないため、次のように自分で作成しました。 procedure MinMax(a, b, c): local min, max if a > b: max = a min = b else: max = b min = a if c > max: max = c else: if c < min: min = c return (min, max) …


弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.