Tuesday, December 31, 2024
Google search engine
HomeData Modelling & AIProgram to check if an Array is Palindrome or not

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++




// C++ Program to check whether the
// Array is palindrome or not
 
#include <iostream>
using namespace std;
 
void palindrome(int arr[], int n)
{
    // Initialise flag to zero.
    int flag = 0;
 
    // Loop till array size n/2.
    for (int i = 0; i <= n / 2 && n != 0; i++) {
 
        // Check if first and last element are different
        // Then set flag to 1.
        if (arr[i] != arr[n - i - 1]) {
            flag = 1;
            break;
        }
    }
 
    // If flag is set then print Not Palindrome
    // else print Palindrome.
    if (flag == 1)
        cout << "Not Palindrome";
    else
        cout << "Palindrome";
}
 
// Driver code.
int main()
{
    int arr[] = { 1, 2, 3, 2, 1 };
    int n = sizeof(arr) / sizeof(arr[0]);
 
    palindrome(arr, n);
    return 0;
}


Java




// Java Program to check whether the
// Array is palindrome or not
 
class GfG {
 
    static void palindrome(int arr[], int n)
    {
        // Initialise flag to zero.
        int flag = 0;
 
        // Loop till array size n/2.
        for (int i = 0; i <= n / 2 && n != 0; i++) {
 
            // Check if first and last element are different
            // Then set flag to 1.
            if (arr[i] != arr[n - i - 1]) {
                flag = 1;
                break;
            }
        }
 
        // If flag is set then print Not Palindrome
        // else print Palindrome.
        if (flag == 1)
            System.out.println("Not Palindrome");
        else
            System.out.println("Palindrome");
    }
 
    // Driver code.
    public static void main(String[] args)
    {
        int arr[] = { 1, 2, 3, 2, 1 };
        int n = arr.length;
 
        palindrome(arr, n);
    }
}


Python3




# Python3 Program to check whether the
# Array is palindromic or not
def palindrome(arr, n):
 
    # Initialise flag to zero.
    flag = 0;
 
    # Loop till array size n/2.
    i = 0;
    while (i <= n // 2 and n != 0):
 
        # Check if first and last element
        # are different. Then set flag to 1.
        if (arr[i] != arr[n - i - 1]):
            flag = 1;
            break;
        i += 1;
 
    # If flag is set then print Not Palindrome
    # else print Palindrome.
    if (flag == 1):
        print("Not Palindrome");
    else:
        print("Palindrome");
 
# Driver code.
arr = [ 1, 2, 3, 2, 1 ];
n = len(arr);
 
palindrome(arr, n);
 
# This code is contributed
# by chandan_jnu


C#




// C# Program to check whether the
// Array is palindromic or not
class GfG
{
 
    static void palindrome(int []arr, int n)
    {
        // Initialise flag to zero.
        int flag = 0;
 
        // Loop till array size n/2.
        for (int i = 0; i <= n / 2 && n != 0; i++)
        {
 
            // Check if first and last element are different
            // Then set flag to 1.
            if (arr[i] != arr[n - i - 1])
            {
                flag = 1;
                break;
            }
        }
 
        // If flag is set then print Not Palindrome
        // else print Palindrome.
        if (flag == 1)
            System.Console.WriteLine("Not Palindrome");
        else
            System.Console.WriteLine("Palindrome");
    }
 
    // Driver code.
    static void Main()
    {
        int []arr = { 1, 2, 3, 2, 1 };
        int n = arr.Length;
 
        palindrome(arr, n);
    }
}
 
// This code is contributed by chadan_jnu


PHP




<?php
// PHP Program to check whether the
// Array is palindrome or not
 
function palindrome($arr, $n)
{
    // Initialise flag to zero.
    $flag = 0;
 
    // Loop till array size n/2.
    for ($i = 0; $i <= $n / 2 &&
                 $n != 0; $i++)
    {
 
        // Check if first and last element are
        // different then set flag to 1.
        if ($arr[$i] != $arr[$n - $i - 1])
        {
            $flag = 1;
            break;
        }
    }
 
    // If flag is set then print Not Palindrome
    // else print Palindrome.
    if ($flag == 1)
        echo "Not Palindrome";
    else
        echo "Palindrome";
}
 
// Driver code.
$arr = array( 1, 2, 3, 2, 1 );
$n = count($arr);
 
palindrome($arr, $n);
 
// This code is contributed by chandan_jnu
?>


Javascript




<script>
 
// Javascript Program to check whether the
// Array is palindrome or not
  
function palindrome(arr, n)
{
    // Initialise flag to zero.
    let flag = 0;
 
    // Loop till array size n/2.
    for (let i = 0; i <= n / 2 && n != 0; i++) {
 
        // Check if first and last element are different
        // Then set flag to 1.
        if (arr[i] != arr[n - i - 1]) {
            flag = 1;
            break;
        }
    }
 
    // If flag is set then print Not Palindrome
    // else print Palindrome.
    if (flag == 1)
        document.write("Not Palindrome");
    else
        document.write("Palindrome");
}
 
// Driver code.
  
    let arr = [ 1, 2, 3, 2, 1 ];
    let n = arr.length;
 
    palindrome(arr, n);
 
// This code is contributed by Mayank Tyagi
 
</script>


Output: 

Palindrome

 

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
 

Feeling lost in the world of random DSA topics, wasting time without progress? It’s time for a change! Join our DSA course, where we’ll guide you on an exciting journey to master DSA efficiently and on schedule.
Ready to dive in? Explore our Free Demo Content and join our DSA course, trusted by over 100,000 neveropen!

RELATED ARTICLES

Most Popular

Recent Comments