目次
例例
イラスト
方法 2
新しい文字列を temp 変数に格納するため、空間複雑度 - O(N)。
ホームページ バックエンド開発 C++ 指定された文字のすべての出現を指定された置換文字で置き換えることにより、文字列を変更します。

指定された文字のすべての出現を指定された置換文字で置き換えることにより、文字列を変更します。

Sep 08, 2023 am 10:17 AM
文字置換 文字を置き換える 文字列の変更

指定された文字のすべての出現を指定された置換文字で置き換えることにより、文字列を変更します。

この質問では、文字ペア配列内の指定された文字に基づいて、指定された文字列の文字を置換する必要があります。 2 つの異なる解決策について説明します。最初の方法では、指定された文字列の文字と文字のペアを反復処理して各文字を置換します。

2 番目の方法では、長さ 26 の配列を使用して、各文字に関連付けられた置換文字を格納し、指定された文字列の文字を変更します。

問題ステートメント -N 個の小文字のアルファベットを含む文字列 str が与えられます。また、文字のペアを含む配列も与えられます。指定された文字列内のpairs[i][0]文字をpairs[i][1]に置き換える必要があります。

例例

リーリー リーリー

イラスト

ここで、「x」は「a」に置き換えられ、「y」は「b」に置き換えられ、「z」は「c」に置き換えられます。

リーリー リーリー

イラスト

文字列内の「a」は「e」に、「b」は「t」に、「e」は「f」に、「r」は「s」に置き換えられます。

方法 1

このメソッドでは、文字の各ペアを反復処理し、指定された文字列内の一致する文字を置き換えます。各ループの文字列を反復処理するには、2 つのネストされたループが必要です。

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

  • ステップ 1

    - 文字列のサイズを変数 'N' に格納し、配列を変数 'M' に格納します。

  • ステップ 2

    - 文字列のコピーを「temp」変数に保存します。

  • ステップ 3

    - for ループを使用して、ペアのリストを反復処理します。

  • ステップ 4

    -ループ内で、最初の文字を変数「a」に保存し、2 番目の文字を変数「b」に保存します。

  • ステップ 5

    - ネストされたループを使用して文字列を反復処理します。

  • ステップ 6

    -ネストされたループで、指定された文字列の現在の文字が「a」と等しい場合、一時文字列内の現在の文字を「b」に置き換えます。

  • ステップ 7

    - temp の値を返します。

    ###例### リーリー ###出力### リーリー
  • 時間計算量 - O(N*M)、N は文字列の長さ、M は文字ペア配列の長さです。

新しい文字列を temp 変数に格納するため、空間複雑度 - O(N)。

方法 2

このメソッドでは、サイズ 26 の配列を作成できます。その後、置換可能な文字を現在の文字の位置に保存できます。最後に、配列から置換可能な要素を取得し、文字列の各文字を更新します。

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

ステップ 1

- 文字列サイズを「N」として、配列サイズを「M」として取得します。

  • ステップ 2

    - 長さ 26 の「初期」配列と「最終」配列を定義します。

  • ステップ 3

    - 文字列をループし、str[Y] を "str[Y] - a" の最初と最後の配列インデックスに格納します。ここで、str[Y] - 'a' は、文字の ASCII 値に基づいて 0 ~ 25 のインデックスを与えます。

    最初と最後の配列の 'str[Y] - a' の位置に str[Y] を格納する理由は、文字列に文字が存在するが文字ペアには存在しない場合、それを変更しないままにしておくことができるためです。
  • ステップ 4 - 指定された文字ペアの配列を反復処理します。ループ内で、ネストされたループを使用して、初期配列を反復処理します。現在のペアの最初の文字が「初期」配列の文字と等しい場合、「最終」配列の文字は現在のペアの 2 番目の文字で更新されます。

  • ステップ 5

    -「結果」変数を定義し、空の文字列に初期化します。

  • ステップ 6

    - 入力文字列を反復処理し、現在の文字に対応する文字を「最終」配列から取得し、それを「結果」文字列に追加します。

  • ステップ 7

    - 「結果」文字列を返します。

    ###例### リーリー ###出力### リーリー
  • 時間計算量 - O(N)、ネストされたループ、定数反復のみ。
  • 空間複雑度 - O(1)。長さ 26 (定数) の配列を使用するためです。

以上が指定された文字のすべての出現を指定された置換文字で置き換えることにより、文字列を変更します。の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。

ホットAIツール

Undresser.AI Undress

Undresser.AI Undress

リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover

AI Clothes Remover

写真から衣服を削除するオンライン AI ツール。

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Clothoff.io

Clothoff.io

AI衣類リムーバー

Video Face Swap

Video Face Swap

完全無料の AI 顔交換ツールを使用して、あらゆるビデオの顔を簡単に交換できます。

ホットツール

メモ帳++7.3.1

メモ帳++7.3.1

使いやすく無料のコードエディター

SublimeText3 中国語版

SublimeText3 中国語版

中国語版、とても使いやすい

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強力な PHP 統合開発環境

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

SublimeText3 Mac版

SublimeText3 Mac版

神レベルのコード編集ソフト(SublimeText3)

正規表現を使用して、PHP で文字列内の特定の文字を他の文字に置き換える方法 正規表現を使用して、PHP で文字列内の特定の文字を他の文字に置き換える方法 Jun 23, 2023 am 09:46 AM

PHP では、正規表現は文字列の処理と変換を簡単に行うのに役立つ非常に強力なツールです。正規表現を使用すると、特定のパターンを持つ文字列の検索、一致する文字列の置換など、文字列に対する効率的かつ柔軟な操作を実現できます。この記事では、正規表現を使用して文字列内の特定の文字を他の文字に置き換える方法について説明します。これは、テキスト内の HTML タグをプレーン テキストに置き換えたり、テキスト内の絵文字テーブルを置き換えたりするなど、一般的なニーズです。

Python プログラム: 文字列の右側から文字列を切り取る Python プログラム: 文字列の右側から文字列を切り取る Sep 08, 2023 pm 06:21 PM

Python には、右側の文字を削除する事前定義関数 rstrip() があります。これは、文字列の右側のスペースを削除することを意味します。文字列の左側からトリミングする方法を理解するための例を見てみましょう。指定された文字列「WIRELESS」から正しい文字列 LESS を削除し、結果の値を「WIRE」として取得します。与えられた文字列「kingdom」において、右側の文字列 dom を削除し、結果の値を「king」として取得します。構文 次の例で使用される構文は -isspace() です。これは、文字内に空白、改行、またはスペースを使用できるようにする Python の事前定義メソッドです。 rstrip("パラメータアサストリ

C++ プログラム: 特定のインデックスの文字を置換します C++ プログラム: 特定のインデックスの文字を置換します Aug 25, 2023 pm 10:53 PM

文字列は文字の集合です。これらを文字配列と呼ぶこともできます。指定されたインデックスと値を持つ文字列で構成される文字配列を考えてみましょう。場合によっては、文字列に何らかの変更を加えることができます。その変更の 1 つは、特定のインデックスを提供して文字を置き換えることです。この記事では、C++ を使用して文字列内の特定のインデックスの文字を置換する方法を説明します。構文 String_variable[<givenindex>]=<newcharacter> C++ では、インデックスを使用して文字列文字にアクセスできます。存在する

ファイル内の特定の単語を除くすべての文字を「#」に置き換えるプログラムを Java で作成します ファイル内の特定の単語を除くすべての文字を「#」に置き換えるプログラムを Java で作成します Sep 13, 2023 am 08:57 AM

Stringクラスのsplit()メソッド。現在の文字列を、指定された正規表現に一致するものに分割します。このメソッドによって返される配列には、指定された式に一致する別の部分文字列で終了するか、文字列の最後で終了するこの文字列の各部分文字列が含まれます。 String クラスの replaceAll() メソッドは、正規表現を表す 2 つの文字列と置換文字列を受け入れ、一致する値を指定された文字列で置き換えます。特定の単語を除くファイル内のすべての文字を「#」に置き換えます (一方向) - ファイルの内容を文字列に読み取ります。空の StringBuffer オブジェクトを作成します。取得した文字列を String 配列に分割するには、split() メソッドを使用します。いたるところ

特定のインデックスの文字を置換する Python プログラム 特定のインデックスの文字を置換する Python プログラム Aug 19, 2023 am 09:41 AM

Python では、list() メソッドを使用して文字列を文字のリストに変換することで、特定のインデックスにある文字を簡単に置換できます。次に、必要なインデックスの文字を変更し、join() メソッドを使用してリストを文字列に変換します。スライスおよび置換メソッドを使用して、特定のインデックスにある文字を置換することもできます。この記事では、リストと結合メソッド、スライスメソッド、および置換メソッドを使用して、Python の特定のインデックスにある文字を置換する例を示します。方法 1: list() メソッドと join() メソッドの構文を使用する list() メソッド list(sequence) list() メソッドは、シーケンス (文字列、タプル、セットなど) をパラメーターとして受け取り、特定の

指定された文字のすべての出現を指定された置換文字で置き換えることにより、文字列を変更します。 指定された文字のすべての出現を指定された置換文字で置き換えることにより、文字列を変更します。 Sep 08, 2023 am 10:17 AM

この問題では、文字ペアの配列内の指定された文字に基づいて、指定された文字列の文字を置換する必要があります。 2 つの異なる解決策について説明します。最初の方法では、指定された文字列の文字と文字のペアを反復処理して各文字を置換します。 2 番目の方法では、長さ 26 の配列を使用して、各文字に関連付けられた置換文字を格納し、指定された文字列の文字を変更します。問題ステートメント-N 個の小文字のアルファベットを含む文字列 str が与えられます。また、文字のペアを含む配列も与えられます。指定された文字列内のpairs[i][0]文字をpairs[i][1]に置き換える必要があります。例入力 – str="xyz"

Vue フォーム処理を使用してフォーム フィールドに文字置換を実装する方法 Vue フォーム処理を使用してフォーム フィールドに文字置換を実装する方法 Aug 10, 2023 pm 05:37 PM

Vue フォーム処理を使用してフォーム フィールドの文字置換を実装する方法 Web アプリケーションを開発する場合、フォームは不可欠な部分です。シナリオによっては、データ形式の要件を満たすため、または特定の機能を実装するために、ユーザーが入力した文字を置き換える必要がある場合があります。人気のあるフロントエンド フレームワークとして、Vue.js は強力なデータ バインディングおよび処理機能を提供し、フォーム処理をより便利にします。この記事では、Vue.jsを使ってフォームフィールドの文字置換機能を実装する方法とコード例を紹介します。初め、

文字を最も近い文字に置換することを最小限に抑え、文字列を回文にします 文字を最も近い文字に置換することを最小限に抑え、文字列を回文にします Sep 15, 2023 pm 12:25 PM

この記事では、興味深いアルゴリズムの問​​題について説明します: 「文字列回文を作成するために、文字を最も近いアルファベットで置換することを最小限に抑える。」 この問題は、文字列操作、回文チェック、および文字 ASCII 値の概念を含むため、興味深いです。 。この問題をさらに深く掘り下げてみましょう。問題ステートメント 与えられた文字列を、最小限の置換数で回文に変換することが課題です。これらの置換は、文字を最も近いアルファベットに変更することで実現されます。理解に関する質問 回文とは、前から読むのと同じように後ろから読むことのできる一連の単語、語句、数字、またはその他の文字です。私たちの目標は、特定の文字列を回文に変換するために必要な置換の総数を最小限に抑えることです。たとえば、文字列「abc」について考えてみましょう。それを回文に変換するには、次のように変換できます。

See all articles