ホームページ  >  記事  >  バックエンド開発  >  3 つの重複しない部分文字列を計算し、それらを連結して回文を形成します

3 つの重複しない部分文字列を計算し、それらを連結して回文を形成します

王林
王林転載
2023-09-07 18:25:021210ブラウズ

###############導入###

このチュートリアルでは、指定された文字列 s から 3 つの重複しない部分文字列を見つけ、すべての部分文字列が結合されて回文を形成する方法について詳しく説明します。このタスクを解決するには、C プログラミング言語の文字列クラス機能を使用します。 3 つの重複しない部分文字列を計算し、それらを連結して回文を形成します

文字列内の回文は、文字列が順方向と逆方向の両方で同じように読めることを意味します。回文文字列の例は「Madam」です。

文字列「s」があり、その部分文字列が a、b、c で​​あるとします。 a、b、c を組み合わせると、回文文字列が形成されます。これは問題のロジックを理解する例です。

ステートメントの説明

リーリー

3 つの部分文字列をすべて連結すると、結果の文字列は回文文字列 (abbbacbba) になります。

###文法###

size() 関数は string クラスに属し、入力文字列のサイズとその文字長を取得するために使用されます。

リーリー ###アルゴリズム###

入力文字列を取得します。

回文部分文字列の数を追跡するために使用されるカウンター変数を初期化します。

    3 つのネストされた for ループを使用して、定義された長さの 3 つの可能な部分文字列を生成します。
  • 最初の内部ループは、0 から文字列長 - 3 まで初期化されます。
  • 2 番目の内側ループは、最初の内側ループ 1 から文字列長 - 2 まで初期化されます。
  • 外側のループは、2 番目のループ 1 から文字列長 - 1 まで初期化されます。
  • すべての部分文字列を見つけたら、それらを連結します。
  • 部分文字列回文があるかどうかを確認し、存在する場合はカウンター変数の値をインクリメントします。
  • カウンタ変数の値を出力します。
  • ###例###
  • C を使用して上記のアルゴリズムを実装するには、入力文字列を取得し、部分文字列の可能なすべての組み合わせを生成し、それらの回文部分文字列のみを考慮します。このような部分文字列が可能であれば、カウンター変数がインクリメントされます。カウンタ変数の結果を出力します。
  • リーリー ###出力### リーリー ###結論は###

    私たちは回文を形成する有効な部分文字列を見つける方法を開発しました。このソリューションを実装するには、C ループと if 条件を使用しました。 C で例の 1 つを実装するには、size() 関数とネストされたループを使用しました。ネストされたループは、異なる長さの部分文字列を見つけるのに役立ち、size() 関数は文字列のサイズを返します。

以上が3 つの重複しない部分文字列を計算し、それらを連結して回文を形成しますの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事はtutorialspoint.comで複製されています。侵害がある場合は、admin@php.cn までご連絡ください。