Computer >> 컴퓨터 >  >> 프로그램 작성 >> Java

재귀를 사용하여 문장을 뒤집는 Java 프로그램

<시간/>

이 기사에서는 재귀를 사용하여 문장을 뒤집는 방법을 이해할 것입니다. 재귀 함수는 특정 조건이 충족될 때까지 자신을 여러 번 호출하는 함수입니다.

재귀 함수는 특정 조건이 충족될 때까지 자신을 여러 번 호출하는 함수입니다.

재귀는 자기 유사 방식으로 항목을 반복하는 프로세스입니다. 프로그래밍 언어에서 프로그램이 동일한 함수 내에서 함수를 호출하도록 허용하는 경우 이를 함수의 재귀 호출이라고 합니다.

많은 프로그래밍 언어는 스택을 통해 재귀를 구현합니다. 일반적으로 함수(호출자)가 다른 함수(피호출자) 또는 자신을 피호출자로 호출할 때마다 호출자 함수는 실행 제어를 피호출자에게 넘깁니다. 이 전송 프로세스에는 호출자에서 호출 수신자에게 전달할 일부 데이터가 포함될 수도 있습니다.

아래는 동일한 데모입니다 -

입력

입력이 -

라고 가정합니다.
문장 입력 :좋은 저녁 되세요

출력

원하는 출력은 -

반전 입력:gnineve ecin a evaH

알고리즘

단계 1 - START단계 2 - my_input 및 my_result라는 두 개의 문자열 값 선언단계 3 - 사용자로부터 필요한 값 읽기/값 정의단계 4 - 문자열을 입력으로 받아 다음 위치의 문자를 반환하는 재귀 함수 'reverseString이 정의됩니다. 마지막 위치입니다. 5단계 - 'my_input' 값이 빈 문자열이 아닐 때까지 함수가 재귀적으로 호출됩니다. 6단계 - 재귀 함수가 호출되고 'my_input' 값이 전달됩니다. 반환 값 저장Step 7 - 결과 표시Step 8 - 중지

예시 1

여기에서 입력은 프롬프트에 따라 사용자가 입력하고 있습니다. 우리코딩 그라운드 도구에서 이 예제를 라이브로 사용해 볼 수 있습니다. 재귀를 사용하여 문장을 뒤집는 Java 프로그램 .

 import java.util.Scanner;public class Reverse { public static void main(String[] args) { String my_input, my_result; System.out.println("필수 패키지를 가져왔습니다."); 스캐너 my_scanner =새로운 스캐너(System.in); System.out.println("리더 객체가 정의되었습니다. "); System.out.print("문장을 입력하세요 :"); my_input =my_scanner.nextLine(); my_result =reverseString(my_input); System.out.println("반전 입력:" + my_result); } public static String reverseString(String my_input) { if (my_input.isEmpty()) return my_input; return reverseString(my_input.substring(1)) + my_input.charAt(0); }}

출력

필수 패키지를 가져왔습니다.리더 개체가 정의되었습니다.문장을 입력하십시오:좋은 저녁 되세요.반대 입력은 다음과 같습니다. 

예시 2

여기서 정수는 이전에 정의되었으며 그 값은 콘솔에 액세스되어 표시됩니다.

공개 클래스 리버스 { public static void main(String[] args) { String my_input, my_result; my_input ="좋은 저녁 되세요"; System.out.println("문자열은 다음과 같이 정의됩니다." +my_input); my_result =reverseString(my_input); System.out.println("반전 입력:" + my_result); } public static String reverseString(String my_input) { if (my_input.isEmpty()) return my_input; return reverseString(my_input.substring(1)) + my_input.charAt(0); }}

출력

문자열은 다음과 같이 정의됩니다:좋은 저녁 되세요 반대 입력:gnineve ecin a evaH