Introduktion till Palindrome i Java

En streng eller ett tal sägs vara en palindrom om den förblir densamma även efter att den har vänt. Till exempel är 'MADAM' en palindrom sträng eftersom den stavas 'MADAM' även om den är omvänd. Men när det gäller 'LUCKY' är den här strängen inte palindrom eftersom den är 'YKCUL' när den är omvänd. Några av palindrome-numren är 365563, 48984, 12321, 171, 88, 90009, 343 och några av palindrome-strängarna är MADAM, MALAYALAM, LOL, DAD, MOM, C ++ & ++ C, etc. Låt oss se logiken och implementeringen av palindrome i följande avsnitt. I det här ämnet kommer vi att lära oss om Palindrome i Java.

Logiken bakom Palindrome i Java

För att kontrollera om ett nummer är en palindrome, kan följande algoritm användas.

  • Ta en inmatningssträng eller nummer som måste kontrolleras om det är en palindrome eller inte.

Låt oss till exempel ta numret 353 som ingång.

  • Ta inmatningsnumret och kopiera det till en temp-variabel

353-> temp

  • Vänd den på med, medan eller vilken metod du väljer.

Reversednumber: rev=353

  • Jämför inmatningsnumret och det omvända numret.

Om de är desamma, sägs numret vara ett palindromtal.

Annars är numret inte ett palindromnummer.

dvs.

If(inputnum==rev)
( then palindrome )
Else not palindrome

Hur testar man Palindrome med olika metoder?

Det finns flera metoder för att kontrollera om det givna inmatningsnumret är en palindrome eller inte.

  1. För Loop
  2. Medan Loop
  3. Biblioteksmetod (för strängar)

Låt oss undersöka var och en av dem i detalj.

1. Program för att kontrollera palindromnumret med slinga

//Java program to check whether a String is a Palindrome or not using For Loop
import java.util.*;
public class PalindromeNumberExample (
//main method
public static void main(String() args) (
int r=0 ; //reversed Integer
int rem, num; //remainder and original number
Scanner s = new Scanner(System.in);
System.out.print("Enter number that has to be checked:");
num = s.nextInt();
//Store the number in a temporary variable
int temp = num;
//loop to find the reverse of a number
for( ;num != 0; num /= 10 )
(
rem = num % 10; // find the modulus of the number when divided by 10
r = r * 10 + rem;
)
//check whether the original and reversed numbers are equal
if (temp == r)
(
System.out.println(temp + " is input number");
System.out.println(r + " is the reversed number");
System.out.println("Since they are equal " + temp + " is a palindrome number");
)
else
(
System.out.println(temp + " is input number");
System.out.println(r + " is the reversed number");
System.out.println("Since they are not equal " + temp + " is not a palindrome number");
)
)
)

Provutgång 1:

Här, eftersom 353 är densamma när den är omvänd, betraktas det som en palindrom.

Provutgång 2:

Här, eftersom 234 förblir inte densamma när den vänds, anses det inte vara en palindrom.

2. Program för att kontrollera palindromnumret med hjälp av loopen

//Java program to check whether a number is a Palindrome or not using While Loop
import java.util.*;
public class PalindromeNumberExample (
public static void main(String() args) (
int r=0, rem, num;
Scanner s = new Scanner(System.in);
System.out.print("Enter number that has to be checked:");
num = s.nextInt();
//Store the number in a temporary variable
int temp = num;
//loop to find the reverse of a number
while( num != 0 )
(
rem= num % 10;
r= r * 10 + rem;
num=num/10;
)
//check whether the original and reversed numbers are equal
if (temp == r)
(
System.out.println(temp + " is input number");
System.out.println(r + " is the reversed number");
System.out.println("Since they are equal " + temp + " is a palindrome number");
)
else
(
System.out.println(temp + " is input number");
System.out.println(r + " is the reversed number");
System.out.println("Since they are not equal " + temp + " is not a palindrome number");
)
)
)

Provutgång 1:

Provutgång 2:

3. Program för att kontrollera palindrome-nummer med hjälp av Library Method (för strängar)

//Java program to check whether a String is a Palindrome or not using Library method
import java.util.*;
public class PalindromeNumberExample (
//Function to check whether the string is palindrome or not
public static void PalindromeCheck(String str)
(
// reverse the input String
String rev = new StringBuffer(str).reverse().toString();
// checks whether the string is palindrome or not
if (str.equals(rev))
(
System.out.println("input string is :" + str);
System.out.println("Reversed string is :" + rev);
System.out.println("Since the input and reversed string are equal, "+ str +" is a palindrome");
)
else
(
System.out.println("input string is :" + str);
System.out.println("Reversed string is :" + rev);
System.out.println("Since the input and reversed string are not equal, "+ str +" is not a palindrome");
)
)
public static void main (String() args)
(
PalindromeCheck("MALAYALAM");
)
)

Provutgång:

Här skickas ingångssträngen i själva programmet.

Följande program används också för att kontrollera om en sträng är en palindrome.

//Java program to check whether a String is a Palindrome or not
import java.util.*;
public class PalindromeNumberExample (
public static void main(String args())
(
String st, rev = "";
Scanner sc = new Scanner(System.in);
System.out.println("Enter the string that has to be checked:");
st = sc.nextLine();
int len = st.length(); //length of the string
for ( int i = len- 1; i >= 0; i-- )
rev = rev + st.charAt(i);
if (st.equals(rev))
(
System.out.println("input string is :" + st);
System.out.println("Reversed string is :" + rev);
System.out.println("Since the input and reversed string are equal, "+ st +" is a palindrome");
)
else
(
System.out.println("input string is :" + st);
System.out.println("Reversed string is :" + rev);
System.out.println("Since the input and reversed string are not equal, "+ st +" is not a palindrome");
)
)
)

Provutgång:

Slutsats

Ett tal sägs vara palindrome om det förblir detsamma även om det är vänt. En palindrom kan också kontrolleras i strängar. Några av palindromnumren och strängarna är MOM, MALAYALAM, DAD, LOL, 232, 1331, etc. I detta dokument behandlas flera aspekter av Palindrome såsom algoritm, metoder, implementering etc.

Rekommenderade artiklar

Detta är en guide till Palindrome i Java. Här diskuterar vi hur man testar Palindrome med olika metoder med provutgången. Du kan också titta på följande artiklar för att lära dig mer -

  1. Fyrkantig rot i Java
  2. Omvänd nummer i Java
  3. StringBuffer i Java
  4. CardLayout i Java
  5. Översikt över Palindrome i C #
  6. Omvänd i JavaScript
  7. Java-distributionsverktyg
  8. Palindrome i C ++
  9. Square Root i PHP
  10. Working and Top 3 Enum Methods in C #

Kategori: