繰り返し出現する文字を削除して、指定された文字列をデコードします。

PHPz
リリース: 2023-08-25 21:29:06
転載
1235 人が閲覧しました

繰り返し出現する文字を削除して、指定された文字列をデコードします。

この記事の目的は、繰り返し現れる文字を削除して指定された文字列をデコードするプログラムを実装することです。

文字列とは何かご存知のとおり、文字列は文字の集合にすぎません。さらに、文字列内で文字を繰り返す回数に制限はありません。同じ文字が文字列内に複数回出現する場合があります。この記事では、重複した文字列を削除することで、指定されたエンコードされた文字列 str をデコードする方法を見つけます。

目標は、「a」が 1 回出現、「b」が 2 回出現、「c」が 3 回出現、「d」が 4 回出現し、最大 26 回出現するまで使用されている、指定された文字列 str をデコードすることです。 「z」を 1 回コーディングします。

###問題文###

重複した文字列を削除して指定された文字列をデコードするプログラム。

- レターに含まれる可能性のあるスペースを無視しないでください。 例 例 1

リーリー リーリー

説明

の翻訳は次のとおりです:

説明

各文字は、英語のアルファベットで出現する回数に従って書かれます。文字 b が 4 回繰り返されるため、結果の文字列は「abb acc」になります。文字 a が 2 回繰り返され、最後に文字 c が 3 回繰り返されます。

この場合も、スペースは無視されません。

例 2

リーリー リーリー

説明

の翻訳は次のとおりです:

説明

各文字は、英語のアルファベットで出現する回数に従って書かれます。文字 d が 8 回繰り返され、最後の文字 a は 1 回だけ出現するため、結果の文字列は「dad」になります。

この場合、文字の間にスペースはありません。

例 3

リーリー リーリー

説明

の翻訳は次のとおりです:

説明

各文字は、英語のアルファベットに出現する回数を考慮して書かれています。文字 a は 1 回しか出現しないため、結果の文字列は「abc」になります。文字 b が 2 回繰り返され、最後に文字 c が 3 回繰り返されます。

この場合、文字の間にスペースはありません。

###方法###

指定された文字列から重複する文字を削除してデコードするために、この記事では次の方法を採用します。

この問題を解決し、重複した文字列を削除して特定の文字列をデコードする方法は、文字列を反復することに基づいています。

つまり、上記の問題は、文字列 str を反復処理して各文字を出力文字列にプッシュし、その位置だけ前に進んで次の文字を見つけることで解決できます。

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

指定された文字列内に存在するキャメルケース文字の数を出力するアルゴリズムを以下に示します

この問題を解決するには、以下の手順に従ってください -

最初のステップ

- 開始

  • ステップ 2 - 文字列を定義します

  • ステップ 3 - 出力文字列を保存するために、初期値が空の文字列を持つ result という名前の変数を作成します。

  • ステップ 4 - 関数 findOccurences(char a1) を作成し、後続の操作を実行します -

  • ステップ 5 - a1 の値が a と z の間にある場合は、a1 の値を「a」として返します。 a1 の値の範囲が A ~ Z の範囲にない場合、a1 の値は「Z」として返されます。 そうでない場合は 0 が返されます。

  • ステップ 6 - 関数 decodeTheString(string s) を定義して文字列 s

  • をデコードします
  • ステップ 7 - 上記の段階を完了したら、文字列の結果を最終文字列として出力します。

  • ステップ 8 - 停止

  • 例: C プログラム これは、繰り返しの文字を削除することによって指定された文字列をデコードする、上で書かれたアルゴリズムを実装する C プログラムです。 リーリー ###出力### リーリー ###結論は###

    同様に、重複した文字列を削除することで、任意の文字列をデコードできます。
この記事では、指定された文字列の重複箇所を削除することで、その文字列をデコードするという課題に取り組みます。ここでは、C プログラミング コードと、その文字列の重複箇所を削除して特定の文字列をデコードするアルゴリズムを示します。

以上が繰り返し出現する文字を削除して、指定された文字列をデコードします。の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:tutorialspoint.com
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート