Program to check if an Array is Palindrome or not
Given an array, the task is to determine whether an array is a palindrome or not.
Examples:
Input: arr[] = {3, 6, 0, 6, 3}
Output: Palindrome
Input: arr[] = {1, 2, 3, 4, 5}
Output: Not Palindrome
Approach:
- Initialise flag to unset int flag = 0.
- Loop the array till size n/2
- In a loop check if arr[i]! = arr[n-i-1] then set the flag = 1 and break
- After the loop has ended, If the flag is set to 1 then print “Not Palindrome” else print “Palindrome”
Below is the implementation of above Approach:
C++
#include <iostream>
using namespace std;
void palindrome( int arr[], int n)
{
int flag = 0;
for ( int i = 0; i <= n / 2 && n != 0; i++) {
if (arr[i] != arr[n - i - 1]) {
flag = 1;
break ;
}
}
if (flag == 1)
cout << "Not Palindrome" ;
else
cout << "Palindrome" ;
}
int main()
{
int arr[] = { 1, 2, 3, 2, 1 };
int n = sizeof (arr) / sizeof (arr[0]);
palindrome(arr, n);
return 0;
}
|
Java
class GfG {
static void palindrome( int arr[], int n)
{
int flag = 0 ;
for ( int i = 0 ; i <= n / 2 && n != 0 ; i++) {
if (arr[i] != arr[n - i - 1 ]) {
flag = 1 ;
break ;
}
}
if (flag == 1 )
System.out.println( "Not Palindrome" );
else
System.out.println( "Palindrome" );
}
public static void main(String[] args)
{
int arr[] = { 1 , 2 , 3 , 2 , 1 };
int n = arr.length;
palindrome(arr, n);
}
}
|
Python3
def palindrome(arr, n):
flag = 0 ;
i = 0 ;
while (i < = n / / 2 and n ! = 0 ):
if (arr[i] ! = arr[n - i - 1 ]):
flag = 1 ;
break ;
i + = 1 ;
if (flag = = 1 ):
print ( "Not Palindrome" );
else :
print ( "Palindrome" );
arr = [ 1 , 2 , 3 , 2 , 1 ];
n = len (arr);
palindrome(arr, n);
|
C#
class GfG
{
static void palindrome( int []arr, int n)
{
int flag = 0;
for ( int i = 0; i <= n / 2 && n != 0; i++)
{
if (arr[i] != arr[n - i - 1])
{
flag = 1;
break ;
}
}
if (flag == 1)
System.Console.WriteLine( "Not Palindrome" );
else
System.Console.WriteLine( "Palindrome" );
}
static void Main()
{
int []arr = { 1, 2, 3, 2, 1 };
int n = arr.Length;
palindrome(arr, n);
}
}
|
PHP
<?php
function palindrome( $arr , $n )
{
$flag = 0;
for ( $i = 0; $i <= $n / 2 &&
$n != 0; $i ++)
{
if ( $arr [ $i ] != $arr [ $n - $i - 1])
{
$flag = 1;
break ;
}
}
if ( $flag == 1)
echo "Not Palindrome" ;
else
echo "Palindrome" ;
}
$arr = array ( 1, 2, 3, 2, 1 );
$n = count ( $arr );
palindrome( $arr , $n );
?>
|
Javascript
<script>
function palindrome(arr, n)
{
let flag = 0;
for (let i = 0; i <= n / 2 && n != 0; i++) {
if (arr[i] != arr[n - i - 1]) {
flag = 1;
break ;
}
}
if (flag == 1)
document.write( "Not Palindrome" );
else
document.write( "Palindrome" );
}
let arr = [ 1, 2, 3, 2, 1 ];
let n = arr.length;
palindrome(arr, n);
</script>
|
Time complexity: O(n) where n is size of given array
Auxiliary space: O(1)
Related Article: Program to check if an array is palindrome or not using Recursion
Last Updated :
20 Jan, 2023
Like Article
Save Article
Share your thoughts in the comments
Please Login to comment...