目次
示例
算法
输出
ホームページ バックエンド開発 C++ C プログラムで、指定された文字列のプレフィックスとサフィックスの両方である最長部分を出力します。

C プログラムで、指定された文字列のプレフィックスとサフィックスの両方である最長部分を出力します。

Sep 23, 2023 pm 08:33 PM
印刷する 抽出されたプログラミングキーワードは次のとおりです。 プレフィックス サフィックス

C プログラムで、指定された文字列のプレフィックスとサフィックスの両方である最長部分を出力します。

给定一个字符串,我们必须检查最长前缀的长度,它也是字符串的后缀,就像有一个字符串“abcab”,所以这里“ab”的长度为2,是最长的子字符串相同的前缀和后缀。

示例

Input: str[] = { “aabbccdaabbcc” }
Output: 6
Input: abdab
Output: 2
ログイン後にコピー

如果我们从字符串的开头和结尾开始指针,那么它们会在某个点重叠,所以我们不会这样做,而是从中间断开字符串并开始匹配左右字符串。如果它们相等,则任何一个匹配字符串的返回大小相同,否则尝试两侧的长度较短。

算法

int longest(char str[], int n)
START
STEP 1 : DECLARE length AS 0 AND i AS n/2
STEP 2 : IF n < 2 THEN
   RETURN 1
STEP 3 :LOOP WHILE TILL str[i]!=&#39;\0&#39;
   IF str[i] == str[length] THEN,
      INCREMENT length BY 1
      INCREMENT i BY 1
   ELSE
      IF length == 0 THEN,
         INCREMENT i BY 1
      ELSE
         DECREMENT length BY 1
      END IF
   END IF
END WHILE
RETURN length
STOP
ログイン後にコピー

示例

#include <stdio.h>
int longest(char str[], int n){
   int length = 0, i = n/2;
   if( n < 2 )
      return 1;
   while( str[i]!=&#39;\0&#39; ){
      //When we find the character like prefix in suffix,
      //we will move the length and i to count the length of the similar prefix and suffix
      if (str[i] == str[length]){
         ++length;
         ++i;
      } else //When prefix and suffix not equal{
         if(length == 0)
            ++i;
         else
            --length;
      }
   }
   return length;
}
int main(int argc, char const *argv[]){
   char str[] = {"abccmmabcc"};
   int n = sizeof(str)/sizeof(str[0]);
   int length = longest(str, n);
   printf("Length = %d", length);
   return 0;
}
ログイン後にコピー

输出

如果我们运行上面的程序,它将生成以下输出:

Length = 4
ログイン後にコピー

以上がC プログラムで、指定された文字列のプレフィックスとサフィックスの両方である最長部分を出力します。の詳細内容です。詳細については、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衣類リムーバー

AI Hentai Generator

AI Hentai Generator

AIヘンタイを無料で生成します。

ホットツール

メモ帳++7.3.1

メモ帳++7.3.1

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

SublimeText3 中国語版

SublimeText3 中国語版

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

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強力な PHP 統合開発環境

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

SublimeText3 Mac版

SublimeText3 Mac版

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

Excelで印刷時に枠線が消えてしまった場合はどうすればよいですか? Excelで印刷時に枠線が消えてしまった場合はどうすればよいですか? Mar 21, 2024 am 09:50 AM

印刷が必要なファイルを開いたときに、印刷プレビューで表の枠線が何らかの原因で消えてしまった場合は、早めに対処する必要があります。 file このような質問がある場合は、エディターに参加して次のコースを学習してください: Excel で表を印刷するときに枠線が消えた場合はどうすればよいですか? 1. 次の図に示すように、印刷する必要があるファイルを開きます。 2. 以下の図に示すように、必要なコンテンツ領域をすべて選択します。 3. 以下の図に示すように、マウスを右クリックして「セルの書式設定」オプションを選択します。 4. 以下の図に示すように、ウィンドウの上部にある「境界線」オプションをクリックします。 5. 下図に示すように、左側の線種で細い実線パターンを選択します。 6.「外枠」を選択します

1ページあたり6ページ、両面設定でpptを印刷する方法をご存知ですか? 1ページあたり6ページ、両面設定でpptを印刷する方法をご存知ですか? Mar 20, 2024 pm 06:36 PM

PPT を使用するとき、印刷する必要があることがよくあります。しかし、PPT にはページ数が多いことは誰もが知っていますが、1 枚ずつ印刷すると本当に無駄でしょうか?したがって、私が個人的にテストしたところ、PPT 6 ページを 1 ページに配置し、両面印刷しても問題ありませんでした。紙の無駄がなく、レイアウト内容も一目瞭然です。では、1 ページに 6 枚の両面 PPT シートを印刷する方法をご存知ですか?次に設定方法を説明しますので、興味のある方はぜひご覧ください。手順の詳細: 1. まず、コンピューター上で印刷する必要がある PPT を見つけ、ダブルクリックして開きます。ページ左上のボタンの横にある逆三角形をクリックし、ドロップダウンメニューから[ファイル]ボタンを見つけてクリックし、表示される情報の[印刷]をクリックします。 2. クリックします

PHPでint型をstringに変換する方法を詳しく解説 PHPでint型をstringに変換する方法を詳しく解説 Mar 26, 2024 am 11:45 AM

PHPでint型をstring型に変換する方法を詳しく解説 PHPの開発では、int型をstring型に変換する必要に遭遇することがよくあります。この変換はさまざまな方法で実現できますが、この記事では、読者の理解を深めるために、具体的なコード例とともに、いくつかの一般的な方法を詳しく紹介します。 1. PHP の組み込み関数 strval() を使用する PHP には、さまざまな型の変数を文字列型に変換できる組み込み関数 strval() が用意されています。 int型をstring型に変換する必要がある場合、

Golang で文字列が特定の文字で始まるかどうかを確認するにはどうすればよいですか? Golang で文字列が特定の文字で始まるかどうかを確認するにはどうすればよいですか? Mar 12, 2024 pm 09:42 PM

Golang で文字列が特定の文字で始まるかどうかを確認するにはどうすればよいですか? Golang でプログラミングする場合、文字列が特定の文字で始まるかどうかを確認する必要がある状況によく遭遇します。この要件を満たすために、Golang の strings パッケージによって提供される関数を使用してこれを実現できます。次に、Golangを使って文字列が特定の文字で始まるかどうかを確認する方法を、具体的なコード例とともに詳しく紹介します。 Golang では、strings パッケージの HasPrefix を使用できます。

エッジブラウザでWebコンテンツを印刷するにはどうすればよいですか?エッジブラウザでWebコンテンツを印刷する方法 エッジブラウザでWebコンテンツを印刷するにはどうすればよいですか?エッジブラウザでWebコンテンツを印刷する方法 Mar 15, 2024 pm 02:46 PM

現在、エッジブラウザを利用してさまざまな情報を検索するユーザーが多くなっていますが、Web ページの内容を印刷中に印刷したいと考えているユーザーもいますが、その操作方法がわからない人も少なくありません。この問題を解決するために、このソフトウェアチュートリアルは、具体的な操作手順をご紹介しますので、お役に立てれば幸いです。困っている方はぜひ手順をチェックしてみてください。エッジ ブラウザで Web コンテンツを印刷する方法の概要: 1. ソフトウェアを起動し、ページの上部にある三点ボタンをクリックします。 2. 以下のオプションメニューで「印刷」を選択します。 3. ページ上にウィンドウが表示されるので、左下の「印刷」をクリックします。

Golang 文字列が指定された文字で終わるかどうかを判断する方法 Golang 文字列が指定された文字で終わるかどうかを判断する方法 Mar 12, 2024 pm 04:48 PM

タイトル: Golang で文字列が特定の文字で終わるかどうかを判断する方法 Go 言語では、文字列が特定の文字で終わるかどうかを判断する必要があることがあります。これは文字列を処理するときに非常に一般的です。この記事では、Go 言語を使用してこの関数を実装する方法と、参考用のコード例を紹介します。まず、Golang で文字列が指定された文字で終わるかどうかを判断する方法を見てみましょう。 Golang の文字列内の文字はインデックス作成によって取得でき、文字列の長さは次のようになります。

Excel の表が完全に印刷されず、一部が印刷できない場合はどうすればよいですか? Excel の表が完全に印刷されず、一部が印刷できない場合はどうすればよいですか? Mar 20, 2024 pm 10:26 PM

仕事では、作成した帳票や書類を紙に印刷することが多いのですが、帳票の内容が多すぎたり、長すぎたりするため、すべてを印刷できないことがあります。不完全な部分を印刷できない場合の対処方法。方法/ステップ 1: まず、印刷するフォームを準備し、調整する必要があります。プロポーションを保ちながら、写真のように横の長さをできるだけ短くします。 2. 次に、図に示すように、インターフェースの左上隅にある「ファイル」ボタンをクリックします。 3. 次に、図に示すように、ポップアップ オプションの [印刷] をクリックします。 4. その後、図に示すように、印刷プレビューウィンドウが表示されるので、その中の「印刷プレビュー」をクリックします。 5.の

python_python の繰り返し文字列チュートリアルで文字列を繰り返す方法 python_python の繰り返し文字列チュートリアルで文字列を繰り返す方法 Apr 02, 2024 pm 03:58 PM

1. まず pycharm を開いて、pycharm ホームページに入ります。 2. 次に、新しい Python スクリプトを作成し、右クリックして [新規] をクリックし、[Pythonfile] をクリックします。 3. 文字列、コード: s="-" を入力します。 4. 次に、文字列内のシンボルを 20 回繰り返す必要があります (コード: s1=s*20)。 5. 印刷出力コード、コード: print(s1) を入力します。 6. 最後にスクリプトを実行すると、下部に戻り値が表示されます。 - 20 回繰り返しました。

See all articles