今日のアルゴリズム: 文字列内の隣接する重複をすべて削除する

今日のアルゴリズム: 文字列内の隣接する重複をすべて削除する

[[419471]]

小文字で構成される文字列 S が与えられた場合、重複削除操作は隣接する 2 つの同一文字を選択して削除します。

重複排除操作は、重複排除が実行できなくなるまで S 上で繰り返し実行されます。

すべての重複削除操作が完了した後の最終文字列を返します。答えは必ず一意になります。

例:

  1. 入力: 「abbaca」  
  2. 出力: "ca"  
  3. 説明する:
  4. たとえば、 「abbaca」では、2 つの文字が隣接していて同じであるため、 「bb」を削除できます。これは、現時点で削除できる唯一の重複です。すると、文字列「aaca」が取得されますが、そのうち「aa」のみが重複排除できるため、最終的な文字列は「ca」になります

ヒント:

  1. <= 長さ <= 20000
  2. S は小文字の英語のみで構成されます。

解決策: スタックの使用

解決方法: 文字列をトラバースし、1 つずつスタックにプッシュします。スタックにプッシュするときに、スタックの先頭要素と一致しているかどうかを判断します。一致している場合、つまり 2 つの要素が同じで隣接している場合は、スタックの先頭要素をポップアウトする必要があり、現在の要素をスタックにプッシュする必要はありません。

解決手順: 文字列を走査し、スタックの先頭文字を取り出し、現在の文字がスタックの先頭文字と一致しているかどうかを判断します。

  • 矛盾しており、先頭の文字がスタックにプッシュされ、現在の文字がスタックにプッシュされます
  • スタック ヘッド文字は現在の文字と同じであり、それに隣接しています。どちらの文字もスタックにプッシュする必要はなく、次のトラバーサルを直接実行できます。

トラバーサルが完了したら、スタック内の文字列を返します。

コード実装:

  1. const removeDuplicates =関数(S) {
  2. スタック = []
  3. (c of S)の場合{
  4. prev = stack.pop() とします。
  5. if(前 !== c) {
  6. スタック.push(前)
  7. スタックをプッシュする(c)
  8. }
  9. }
  10. スタックの結合( ' ' )を返す
  11. };
  • 時間計算量: O(n)
  • 空間計算量: O(n

<<:  ハイテク大手の新たな戦場:ロボットの時代が始まる

>>:  人工知能の台頭によりプログラマーは消滅するのでしょうか?

ブログ    
ブログ    
ブログ    

推薦する

...

企業は従業員がChatGPTを使用することで生じるセキュリティリスクに注意を払う必要がある

ChatGPT のバイラルな成功により、テクノロジー企業間で AI 製品を市場に投入するための激しい...

OpenAIはMicrosoftに対し、Bingチャットボットのリリースを急がないよう警告したと報じられている

6月14日のニュース:最近、人工知能の新興企業OpenAIとMicrosoftが人工知能の分野で協力...

「ブラックミラー」に匹敵する-AI技術が母親に亡くなった娘の姿を見せた

現在、外国の科学技術チームがAI技術を利用して、唯一の子供を亡くした母親の長年の願いを叶えた。彼らは...

TinyML を理解する: エッジでの超低消費電力機械学習

導入最も普及している IoT デバイスは小型で、電力が限られている傾向があります。これらは、組み込み...

...

...

言葉はもっと欺瞞的だ! MITの最新研究:DeepFakeによる顔の加工はペンを使った編集ほど良くない

​DeepFake は発売以来、潜在的な「悪質な AI」としてリストアップされてきました。 有名な「...

ディープラーニングによって変革された5つのコンピュータービジョン技術

概要: この記事では、主にコンピューター ビジョンにおける 5 つの主要テクノロジ、つまり画像分類、...

本記事では、2019年の産業用ロボット開発業界の現状を解説します!

[[323393]]国際ロボット連盟(IFR)が新たに発表した「グローバルロボティクス2019 -...

EUが新たなAI規制を導入

欧州委員会は、ヨーロッパを信頼できる人工知能(AI)の世界的な中心にすることを目指して、2021年4...

携帯電話は小型ロボットに置き換えられるのでしょうか?中国工程院院士:人工知能技術のブレークスルーが鍵

[[361089]] 「ロボットは製造業の頂点であり、その応用と製造は国のハイエンド製造業の重要な指...

...

ボストン・ダイナミクスCEO:軍の命令は否定しないが、ロボット犬を粗雑に扱っていると思う

この記事はAI新メディアQuantum Bit(公開アカウントID:QbitAI)より許可を得て転載...