誰かが私の問題を解決する手助けはできますか?数字の大きな列で繰り返しサブシーケンスを見つける方法は?
問題がある:
仮定1:我々はこのサブ文字列のそれぞれが20000000の間に100個の数字(整数のシーケンスであることを(S1、S2、S3、...)のサブ文字列の数を未定義いますと80000000)がランダムに選択されたことを示します。 このサブストリングを作成する番号とサブストリングの数についての知識はありません。我々は大きくて長い文字列は、数字の何百万人が含まれている、この長い文字列は、サブの繰り返しで構成されています。ここ 重要なことは、2 them.`
仮定との関係はないサブ文字列中の数字の順でありますこの文字列の名前は "S"です。
私たちは以下のように例を簡素化: 各サブ文字列ではなく、100番号の4つの番号が含まれており、各番号の代わりに20000000と80000000の20と80の間にある: 私たちは、「S」の文字列を持って、私たちのアルゴリズムは、サブを見つける必要があります文字列s1からs2とs3を文字列 "S"から削除します。
S= 71,59,32,51,45,22,53,25,66,72,71,26,32,28,45,72,59,51,53,66,59,51,53,66,59,51,53,66,22,59,51,25,72,32,26,53,28,66,45,72,71,32,45,72,71,32,45,72, ... .
このアルゴリズムの出力は以下のようなものです:
S1= 59,51,53,66
S2= 22,25,26,28
S3= 71,32,45,72
注:我々は、サブ文字列を組み合わせて、次々と繰り返さずに「S」の文字列でくることができラッキーであれば。
サブストリング(s1、s2、s3s、...)の番号を見つけるアルゴリズムが必要です また、ストリング "S"を作成するサブストリング(s1、s2、s3、...)も見つかります。
ありがとうございます。
デザインパターンについては何もありません。そのため、java、python、oracleが残ります。これはどれですか? – shmosel
_ find_アルゴリズムが必要です...もちろんこれが欲しいですが、すでに何か試してみましたか? – AKS
問題の説明を修正して十分な制約を追加してください。(あなたの現在の説明からわかるように)現在の問題を解決する簡単な解決方法は次のとおりです。最初の4つの数字をとり、S1に入れます。次の4つの数字を取ってS2に入れます。 –