Computer >> कंप्यूटर ट्यूटोरियल >  >> प्रोग्रामिंग >> सी प्रोग्रामिंग

C प्रोग्राम: सरणी को उलटें (Reverse Array)

संबंधित आइटम्स का समूह जो एक सामान्य नाम से संग्रहीत होता है, सरणी कहलाता है।

सिंटैक्स

datatype array_name[size];

आरंभीकरण

घोषणा के समय आरंभीकरण:

int a[5] = {10, 20, 30, 40, 50};

C में सरणी उलटना

हम स्वैपिंग तकनीक का उपयोग करके सरणी को उलट सकते हैं।

उदाहरण: यदि 'P' चार एलिमेंट्स की पूर्णांक सरणी है:

मूल: P[0]=1, P[1]=2, P[2]=3, P[3]=4
उलटा: P[0]=4, P[1]=3, P[2]=2, P[3]=1

उदाहरण प्रोग्राम

#include <stdio.h> 

int main() {
    int num, i, j, array1[50], array2[50];
    
    printf("Enter number of elements in array:\n");
    scanf("%d", &num);
    
    printf("Enter array elements:\n");
    for(i = 0; i < num; i++)
        scanf("%d", &array1[i]);
    
    // दूसरी सरणी में उलटे क्रम में कॉपी करें
    for(i = num - 1, j = 0; i >= 0; i--, j++)
        array2[j] = array1[i];
    
    // उलटी सरणी को मूल में वापस कॉपी करें
    for(i = 0; i < num; i++)
        array1[i] = array2[i];
    
    printf("The reversed array:\n");
    for(i = 0; i < num; i++)
        printf("%d\n", array1[i]);
    
    return 0;
}

आउटपुट

Enter number of elements in array: 4
Enter array elements: 20 50 60 70
The reversed array:
70
60
50
20

बेहतर दृष्टिकोण: इन-प्लेस रिवर्सल (अतिरिक्त सरणी के बिना)

void reverseArray(int arr[], int n) {
    int start = 0, end = n - 1, temp;
    while(start < end) {
        temp = arr[start];
        arr[start] = arr[end];
        arr[end] = temp;
        start++;
        end--;
    }
}

// उपयोग:
int arr[] = {1, 2, 3, 4, 5};
int n = 5;
reverseArray(arr, n);
// arr अब {5, 4, 3, 2, 1} है

तुलना

विधिस्पेस कॉम्प्लेक्सिटीसमय कॉम्प्लेक्सिटीनोट्स
अतिरिक्त सरणीO(n)O(n)सरल, अतिरिक्त मेमोरी
इन-प्लेस स्वैपO(1)O(n)कुशल, अनुशंसित
रिकर्सिवO(n) स्टैकO(n)शैक्षिक, स्टैक ओवरफ्लो जोखिम

मुख्य बिंदु

  • इन-प्लेस रिवर्सल के लिए दो पॉइंटर्स (शुरुआत और अंत) का उपयोग करें।
  • लूप तब तक चलाएं जब तक start < end।
  • यह दृष्टिकोण मेमोरी-कुशल है और बड़ी सरणियों के लिए उपयुक्त है।
  1. - JavaScript में ऐरे को उल्टा (Reverse) कैसे करें?

    ऐरे को उल्टा करने के तरीके 1. Array.reverse() मेथड (सबसे सरल) म्यूटेटिंग - मूल ऐरे बदल जाता है। <html> <body> <script> var arr = [1, 2, 3, 4, 5]; arr.reverse(); document.write(arr); // 5,4,3,2,1 </script> </body> </html> आउटपुट 5,4,3,2,1 2. बिना बिल्ट-इ

  1. जावास्क्रिप्ट Array reverse() मेथड जावास्क्रिप्ट Array reverse() मेथड

    जावास्क्रिप्ट का reverse() मेथड एरे एलिमेंट्स को उलटने के लिए उपयोग किया जाता है। सिंटैक्स इस प्रकार है: array.reverse() उदाहरण 1 <!DOCTYPE html> <html> <body> <h2>डेमो हेडिंग</h2> <p id=test></p> <script> var arrStud = [Laptop, Desktop, Ta

  1. JavaScript Array.reverse(): एरे को उल्टा करें JavaScript Array.reverse(): एरे को उल्टा करें

    Array.prototype.reverse() मेथड एरे के तत्वों के क्रम को स्थानांतरित (in-place) उलट देता है। पहला तत्व अंतिम बन जाता है और अंतिम पहला। यह मूल एरे को बदल देता है और उसी एरे का संदर्भ लौटाता है। उदाहरण { arr.reverse(); fillEle.innerHTML = उल्टा: + arr.join(, ); }); </scrip