タグ付けされた質問 「edit-distance」


1
準線形空間で距離を編集する
入力のサイズが線形でない作業スペースを使用して、同じ長さの2つの文字列間の正確な編集距離を計算するための最もよく知られている複雑さは何ですか?入力は何らかの読み取り専用形式で保存されていると思います。これは以前に研究された問題ですか? 質問をもう少し具体的にするために、スペース。nは各入力文字列の長さです。Θ(n−−√)Θ(n)\Theta(\sqrt{n})nnn 編集。David Eppsteinの答えに続いて、編集時間を多項式時間とスペース。下限も興味深いでしょう。Θ(n−−√)Θ(n)\Theta(\sqrt{n})

3
2つのパーティション間の距離を編集する
2つのパーティションがあり[1…n][1…n][1 \ldots n]、それらの間の編集距離を探しています。 これによって、パーティションAからパーティションBに移動するために必要な、ノードの異なるグループへの単一の遷移の最小数を見つけたいと思います。 たとえば、から{0 1} {2 3} {4}への距離は{0} {1} {2 3 4}2 検索した後、私はこの論文に出くわしましたが、a)彼らが遠くにいるグループ(私は気にしない)の順序を考慮に入れているかどうかはわかりませんb)それがどのように機能するかはわかりませんc)参照はありません。 助けていただければ幸いです

2
差分、パッチ、マージのカテゴリ理論的処理?
おおよそ次のようなパッチのカテゴリがあります。 オブジェクトはいくつかの基本アルファベットの文字列です モーフィズムは、文字列間の編集スクリプト(「差分」または「パッチ」)です。 私はこれらの質問に興味があります: 最小限の編集スクリプトのカテゴリ概念はありますか?パッチのカテゴリはPOセットで充実しているのでしょうか? さマージカテゴリプッシュアウトパッチの? これを文字列からツリー(ファイルシステム、または代数データ型)に一般化する方法は?

2
移動操作で距離を編集する
動機:共著者が原稿を編集し、編集の概要を明確に見たい。ツール様全ての「差分」は、あなたがしている場合は無用になる傾向があり、両方の周りにテキストを移動する(例えば、再組織化構造)とローカル編集を行います。それを正しくするのは本当に難しいですか? 定義:許可される操作は次のとおりです。最小編集距離を見つけたいです。 「安い」操作:単一の文字の追加/変更/削除(通常のレーベンシュタイン操作)、 "高価な":操作:新しい場所(にサブストリングを移動bはCのD ↦ のC BのD任意の文字列の、B、C、D)。abcd↦acbdabcd↦acbdabcd \mapsto acbdaaabbbcccddd 2つの文字列とyおよび整数kとKが与えられた場合、次の問題を解決したいと思います。xxxyyykkkKKK あなたは、変換することができますにyのほとんどで使用してk個の安価な操作と最大でK高価な操作?xxxyyykkkKKK 質問: この問題には名前がありますか?(配列アラインメントの文脈では非常に標準的な質問のように聞こえます。) 難しい? 難しい場合、をパラメーターとして扱いやすい固定パラメーターですか?KKK 効率的な近似アルゴリズムはありますか?(例えば、最大で有する溶液見つける安価及び2 Kを有する溶液場合、高価な操作をk個の安価及びK高価な操作が存在します。)2k2k2k2K2K2KkkkKKK Wikipediaにリストされている文字列メトリックを見てみましたが、どれも正しく見えませんでした。

2
レーベンシュタイン編集距離の最適な文字列配置を計算するためのスペースの複雑さ
サイズn1n1n_1とつの文字列が与えられた場合n2n2n_2、標準的なレーベンシュタイン編集距離の計算は、時間の複雑さO(n1n2)O(n1n2)O(n_1 n_2)と空間の複雑さ動的アルゴリズムによるものO(n1n2)O(n1n2)O(n_1 n_2)です。(いくつかの改善が編集距離の関数として行うことができるddd、我々はには何の仮定作るんdddO(max(n1,n2))O(max(n1,n2))O(\max(n_1, n_2)) ただし、最適な編集スクリプトの実際の編集を取得する場合、メモリ使用量よりも、実行時間を犠牲にして実行することは可能ですか?O(n1n2)O(n1n2)O(n_1 n_2)

4
2つの単語間で最短の編集移動
入力として2つの単語が与えられた場合、1つの単語を別の単語に変換するために必要な最小限の変更を計算するデータ構造とアルゴリズムを探しています。 いずれかの端に文字を追加します(たとえば、AB-> ABC)。 単語全体を複製および連結します(たとえば、ABC-> ABCABC)。 単語を2つにカットします(複製移動の二重、ABCABC-> ABC + ABC)。 文字の1つを削除します(たとえば、ABC-> AC)。 いずれかの文字を繰り返します(たとえば、ABC-> ABBC)。 たとえば、ABCからBCBCへの移動の最小シーケンスは、ABC-> BC(削除A)-> BCBC(複製)です。 私はコンピューターサイエンスのバックグラウンドを持っていません。おそらくこれはよく知られている問題ですが、私のGoogle検索では何も得られませんでした。 関連する明確に定義された問題を知っていますか? 編集:Anthony Labarreの回答で示唆されたように、私は上記の問題に似たポーズの順列/配置の問題に関するいくつかの論文を読みました。誰もこの問題についてもっと知っていますか?これは関連性がありますか?

2
文字列の均質化の複雑さ
動機:データのバージョン管理用のツールを開発しているときに、2つの整数のセットを "比較"するアルゴリズムを検討しました。この問題を、距離の編集、スワッピングによるグループ化、最小の共通文字列パーティションへの接続があると思われる次の非常に自然な問題に減らすことができました。 問題:文字列、つまり一連の文字が与えられ、最小のコストでそれを均質化することが目標です 。つまり、類似するすべての文字が互いに隣り合うように並べ替えられたシーケンスが必要です。 許可される唯一の操作は、類似した文字のサブシーケンスを取得し、そのサブシーケンスをどこにでも移動することです。これには1ユニットかかります。 この問題の複雑さを特徴付ける助けがあれば大歓迎です! 例: aabcdab:入力 bcd aa ab:最初のaaを「d」の直後の位置に移動した後 b bcdaaa:末尾のbを最初の位置に移動した後 結果の文字列は均一であるため、コストは2になります。 出力に関しては何の制約も受けないことに注意してください。均質である限り、特定の順序を保証する必要はありません。

1
リストをソートするために必要な最小数の転置を効率的に見つける
リストを並べ替えるのに必要な転置の最小数を計算する効率的な方法を教えてください。転置が実際に何であるかを知る必要はありません。 たとえば、リスト[1、1、2、0]には2つの転置が必要です。 [1, 1, 2, 0] // Start [1, 1, 0, 2] // Swap index 2 and 3 [0, 1, 1, 2] // Swap index 0 and 2 リスト[0、1、0、0]には1つの転置が必要です: [0, 1, 0, 0] // Start [0, 0, 0, 1] // Swap index 1 and 3 リスト[2、2、2、2]は既に並べ替えられているため、0の転置が必要です。 一部のメタ情報:1)リストには要素が繰り返されている可能性があるため、単純にソートとID置換の間にCayley距離を使用しても機能しません。2)このMath Overflowの質問は関連しています。

4
レーベンシュタイン距離の中間/コーディング表現
フレーズ: 素早い茶色のキツネが怠惰な犬を飛び越えます[A] そして Uickブラウンフォックスが怠惰な犬をジャンプします[B] AをBに変換するために必要な単一文字の追加、削除、または置換の最小数を計算することにより、Levenshtein Distanceアルゴリズムを使用して類似性を判断することで比較できます。 中間表現、またはおそらくレーベンシュタイン距離のコーディングスキームがあるかどうかを知りたいです。2つのフレーズ間で使用するのではなく、文字インデックスが比較に影響を与えないように、単一のフレーズに適用されるコーディングのみ。 Bでは、Aと比較して 'q'が欠落しています。通常の文字列比較は、単一の文字オフセットのために、一致'The 'して失敗し'uick brown fox...'ます。レーベンシュタイン距離を使用して、より寛容な比較のために元のフレーズAと比較できますが、私の場合、2つのフレーズはなく、1つだけです。 だから、私は情報のパケットで文を明確にコーディングするいくつかの方法を探しています、ローカルの順序などを維持する小さな真実のアトム(文字ごとに1つのパケットを考えているのですか?)間違っています。それ以降の文字には影響しません。 一意のフレーズはそれぞれ、唯一の一意のエンコード/中間表現であるSet A'とにマップする必要がありB'ます。AとBのレーベンシュタイン距離の計算は、セットの共通部分の計算と同じになりますA' = B'。 あるいは、この問題に解決策がない場合(そしてこれが確かに研究の盛んな領域にマップされている場合、私は驚かないでしょう)、その解決できないことについての説得力のある議論/証拠です。
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.