今日のアルゴリズム: 文字列内の単語を反転する

今日のアルゴリズム: 文字列内の単語を反転する

[[423004]]

文字列が与えられたら、文字列内の各単語を 1 つずつ逆にします。

例1:

  1. 入力: 「空は青い」  
  2. 出力: "blue is sky the"  

例2:

  1. 入力: 「hello world!」  
  2. 出力: "world! hello"  
  3. 説明: 入力文字列の先頭または末尾に余分なスペースを含めることができますが、逆順に並べた文字を含めることはできません。

例3:

  1. 入力: 「良い例」  
  2. 出力: "example good a"  
  3. 説明: 2 つの単語の間に余分なスペースがある場合は、逆順に並べた単語間のスペースを 1 つだけに減らします。

例:

  • スペース文字は単語を形成しません。
  • 入力文字列の先頭または末尾には余分なスペースを含めることができますが、逆順に並べた文字には含めることができません。
  • 2 つの単語の間に余分なスペースがある場合は、逆順に並べた単語間のスペースを 1 つだけに減らします。

解決策 1: 正規表現 + JS API

  1. var 逆ワード =関数(s) {
  2. s.trim() を返します。replace ( / \s+/g, ' ' ).split( ' ' ).reverse(). join ( ' ' )
  3. };

ソリューション 2: 両端キュー (API を使用しない)

両端キューは、両端にキューイングできるキューです。

解決:

まず文字列の左右のスペースを削除します

文字列内の各単語を1つずつ読み取り、両端キューの先頭に1つずつ入れます。

次に、キューを文字列出力に変換します(区切り文字としてスペースを使用)

描画の理解:

コード実装:

  1. var 逆ワード =関数(s) {
  2. = 0とする
  3. 右辺をs.length - 1とする
  4. キューを [] にする
  5. 単語を''とする 
  6. while (s.charAt() === ' ' )++
  7. while (s.charAt() === ' ' )  --  
  8. <=){
  9. char = s.charAt()とします。
  10. if ( char === ' ' && 単語) {
  11. キュー.unshift(単語)
  12. 単語 = ''  
  13. }そうでない場合 ( char !== ' ' ){
  14. 単語 +=文字 
  15. }
  16. ++
  17. }
  18. キュー.unshift(単語)
  19. キュー.join ( ' ' )を返す
  20. };

<<:  Twitterはボットアカウントのラベルをテスト中

>>:  分散機械学習フレームワークRay

ブログ    

推薦する

2022年の銀行業界における人工知能の応用

人工知能はあらゆる分野に革命をもたらしており、銀行業も例外ではありません。 調査によると、世界の人工...

国境を越えた大企業よ、安易に「自社開発チップ」を主張しないでほしい

この記事はLeiphone.comから転載したものです。転載する場合は、Leiphone.com公式...

3Dマップナビゲーションに頼らず、自動運転技術が新たな分野に進出

今日の自動運転車の技術は、ナビゲーションに極めて詳細な 3D マップに大きく依存していますが、そのほ...

ディープラーニングの限界を理解していますか?

[[205696]]簡単なコメント: AI、機械学習、ディープラーニングは近年注目されている分野で...

2020年の人工知能の時代へようこそ

2019 年は AI にとって非常に素晴らしい年でしたが、これはすべて 2020 年にさらに大きな影...

Quora は機械学習をどのように活用していますか?

[[202181]] 2015年、同社のエンジニアリング担当副社長であるXavier Amatri...

歴史上3大AI失敗事例を徹底解説

[51CTO.com クイック翻訳] 今日言及された事故のほとんどはAI自体と直接関係はありませんが...

AIはデザインにおいて具体的にどのように使用されるのでしょうか?

人工知能は、過去数十年で最も大きな技術進歩の一つになりました。可能性は刺激的で無限であり、さまざまな...

...

複数の LLM が連携して機能します。清華大学などがオープンソースのマルチエージェントフレームワークAgentVerseを開発:Minecraftのアイテムを共同で作成し、ポケモンを訓練

人類が地球上の食物連鎖の頂点に上り詰め、さらには宇宙の探査を続けられるようになったのは、個人の脳だけ...

...

マスク氏:ニューラリンクが初めて人体にチップを埋め込み、製品化へ

マスク氏の脳コンピューターインターフェース企業ニューラリンクがついに人間に対する臨床研究を開始した。...

時間畳み込みネットワーク: 時系列の次の革命?

この投稿では、最近の TCN ベースのソリューションをいくつかレビューします。まず、動き検出のケース...

...