Dada una array, la tarea es determinar si una array es un palíndromo o no.
Ejemplos:
Input: arr[] = {3, 6, 0, 6, 3} Output: Palindrome Input: arr[] = {1, 2, 3, 4, 5} Output: Not Palindrome
Acercarse:
- Inicialice la bandera para desarmar int flag = 0 .
- Bucle la array hasta el tamaño n/2
- En un bucle, compruebe si arr[i]! = arr[ni-1] luego establece la bandera = 1 y rompe
- Después de que el ciclo haya terminado, si la bandera está configurada, imprima «No palíndromo»; de lo contrario, imprima «Palíndrome»
A continuación se muestra la implementación del enfoque anterior:
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 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.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>
Producción:
Palindrome
Artículo Relacionado: Programa para verificar si un arreglo es palíndromo o no usa Recursión