目次
input
output
Description
説明
入力
出力
ライブ デモンストレーション
上記のコードを実行すると、次の出力が生成されます-
ホームページ Java &#&チュートリアル Java で部分文字列の出現数を再帰的にカウントする

Java で部分文字列の出現数を再帰的にカウントする

Sep 17, 2023 pm 07:49 PM
再帰 計算する 部分文字列

Java で部分文字列の出現数を再帰的にカウントする

2 つの文字列 str_1 と str_2 を指定します。目的は、再帰プロシージャを使用して、文字列 str1 内の部分文字列 str2 の出現数をカウントすることです。

再帰関数は、その定義内で自分自身を呼び出す関数です。

str1 が「I know that you know that i know」の場合、str2 は「know」です。

出現回数は - 3

次のように使用します。例は理解しています。

たとえば、

input

str1 = "TPisTPareTPamTP", str2 = "TP";
ログイン後にコピー

output

Count of occurrences of a substring recursively are: 4
ログイン後にコピー

Description

の中国語訳は次のとおりです。

説明

The substring TP occurs 4 times in str1.
ログイン後にコピー

入力

str1 = "HiHOwAReyouHiHi" str2 = "Hi"
ログイン後にコピー

出力

Count of occurrences of a substring recursively are: 3
ログイン後にコピー

説明

の中国語訳は次のとおりです。

説明

The substring Hi occurs 3 times in str1.
ログイン後にコピー

# #次のプログラムでは 使用するメソッドは次のとおりです -

このメソッドでは、java の contains() メソッドを使用して、str1 内の str2 の出現を検索します。 str1 に str2 が存在する場合は true を返します。 true の場合、java の ReplaceFirst() メソッドを使用して「」に置き換え、戻り値に 1 を加算してカウントを増やすことにより、str1 から最初の一致を削除します。

  • 2 つの文字列を str1 と str2 として取得します。

  • #再帰メソッド subsrting_rec(String str, String sub) は、文字列 str とその部分文字列 sub を受け取り、sub が str に出現する回数を返します。
  • str.contains(sub) が true かどうかを確認します。 ( str には sub があります)
  • true の場合、str.replaceFirst(sub,"") を使用して、最初に出現した sub を "" に置き換えます。
  • これを subsrting_rec(String str, String sub) への再帰呼び出しで実行します。
  • すべての再帰の終了時に、すべての戻り値の合計は count になります。
  • 結果を出力します。

ライブ デモンストレーション

public class recursive{
   public static void main(String args[]){
      String str1 = "TPisTPareTPamTP", str2 = "TP";
      System.out.println("Count of occurrences of a substring recursively are: "+subsrting_rec(str1, str2));
   }
   static int subsrting_rec(String str, String sub){
      if (str.contains(sub)){
         return 1 + subsrting_rec(str.replaceFirst(sub, ""), sub);
      }
      return 0;
   }
}
ログイン後にコピー

出力

上記のコードを実行すると、次の出力が生成されます-

rreeee

以上がJava で部分文字列の出現数を再帰的にカウントするの詳細内容です。詳細については、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)

C++ 関数の再帰的実装: 再帰の深さに制限はありますか? C++ 関数の再帰的実装: 再帰の深さに制限はありますか? Apr 23, 2024 am 09:30 AM

C++ 関数の再帰の深さは制限されており、この制限を超えるとスタック オーバーフロー エラーが発生します。制限値はシステムやコンパイラによって異なりますが、通常は 1,000 ~ 10,000 の間です。解決策には次のものが含まれます: 1. 末尾再帰の最適化、2. 末尾呼び出し、3. 反復実装。

CUDA の汎用行列乗算: 入門から習熟まで! CUDA の汎用行列乗算: 入門から習熟まで! Mar 25, 2024 pm 12:30 PM

General Matrix Multiplication (GEMM) は、多くのアプリケーションやアルゴリズムの重要な部分であり、コンピューター ハードウェアのパフォーマンスを評価するための重要な指標の 1 つでもあります。 GEMM の実装に関する徹底的な調査と最適化は、ハイ パフォーマンス コンピューティングとソフトウェア システムとハードウェア システムの関係をより深く理解するのに役立ちます。コンピューター サイエンスでは、GEMM を効果的に最適化すると、計算速度が向上し、リソースが節約されます。これは、コンピューター システムの全体的なパフォーマンスを向上させるために非常に重要です。 GEMM の動作原理と最適化方法を深く理解することは、最新のコンピューティング ハードウェアの可能性をより有効に活用し、さまざまな複雑なコンピューティング タスクに対してより効率的なソリューションを提供するのに役立ちます。 GEMMのパフォーマンスを最適化することで

Word文書で足し算、引き算、掛け算、割り算を計算する方法 Word文書で足し算、引き算、掛け算、割り算を計算する方法 Mar 19, 2024 pm 08:13 PM

WORD は強力なワード プロセッサです。Word を使用してさまざまなテキストを編集できます。Excel の表では、足し算、引き算、乗算の計算方法をマスターしました。そのため、Word の表で数値の足し算を計算する必要がある場合は、乗数を引くにはどうすればよいですか? 計算には電卓しか使用できませんか?答えはもちろん「いいえ」です。WORD でも実行できます。今日は、Word文書の表で加算、減算、乗算、除算などの基本的な演算を数式を使って計算する方法を説明しますので、一緒に学びましょう。そこで、今日は、WORD 文書で加算、減算、乗算、除算を計算する方法を詳しく説明します。ステップ 1: WORD を開き、ツールバーの [挿入] の下にある [表] をクリックし、ドロップダウン メニューに表を挿入します。

C++ ラムダ式は再帰をサポートしていますか? C++ ラムダ式は再帰をサポートしていますか? Apr 17, 2024 pm 09:06 PM

はい、C++ ラムダ式は std::function を使用して再帰をサポートできます。std::function を使用して Lambda 式への参照をキャプチャします。キャプチャされた参照を使用すると、ラムダ式はそれ自体を再帰的に呼び出すことができます。

Python の count() 関数を使用してリスト内の要素の数を数える方法 Python の count() 関数を使用してリスト内の要素の数を数える方法 Nov 18, 2023 pm 02:53 PM

Python の count() 関数を使用してリスト内の要素の数を計算する方法には、特定のコード サンプルが必要です。Python は強力で習得しやすいプログラミング言語として、さまざまなデータ構造を処理するための組み込み関数を多数提供しています。その 1 つは count() 関数で、リスト内の要素の数をカウントするために使用できます。この記事では、count()関数の使い方と具体的なコード例を詳しく説明します。 count() 関数は Python の組み込み関数であり、特定の値を計算するために使用されます。

C# で Math.Pow 関数を使用して指定した数値のべき乗を計算する方法 C# で Math.Pow 関数を使用して指定した数値のべき乗を計算する方法 Nov 18, 2023 am 11:32 AM

C# には、多くの数学関数が含まれる Math クラス ライブラリがあります。これらには、累乗を計算する関数 Math.Pow が含まれており、指定された数値の累乗を計算するのに役立ちます。 Math.Pow 関数の使用法は非常に簡単で、基数と指数を指定するだけです。構文は次のとおりです: Math.Pow(base,exponent); ここで、base は基数を表し、exponent は指数を表します。この関数は double 型の結果、つまりべき乗の計算結果を返します。しましょう

C++ 関数の再帰的実装: 再帰的アルゴリズムと非再帰的アルゴリズムの比較分析? C++ 関数の再帰的実装: 再帰的アルゴリズムと非再帰的アルゴリズムの比較分析? Apr 22, 2024 pm 03:18 PM

再帰アルゴリズムは、関数の自己呼び出しを通じて構造化された問題を解決します。利点は、シンプルで理解しやすいことですが、欠点は、効率が低く、スタック オーバーフローを引き起こす可能性があることです。非再帰アルゴリズムは、明示的に管理することで再帰を回避します。スタック データ構造の利点は、より効率的でスタックのオーバーフローを回避できることですが、欠点はコードがより複雑になる可能性があることです。再帰的か非再帰的かの選択は、問題と実装の特定の制約によって異なります。

C++関数の再帰の詳しい解説:文字列処理における再帰の応用 C++関数の再帰の詳しい解説:文字列処理における再帰の応用 Apr 30, 2024 am 10:30 AM

再帰関数は、文字列処理の問題を解決するためにそれ自体を繰り返し呼び出す手法です。無限再帰を防ぐために終了条件が必要です。再帰は、文字列の反転や回文チェックなどの操作で広く使用されています。

See all articles