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

C प्रोग्राम में O(n) समय और O(1) स्पेस में ऐरे का बायां रोटेशन प्रिंट करें


समस्या विवरण

हमें कुछ आकार n का एक ऐरे और कई पूर्णांक मान दिए गए हैं, हमें दिए गए इंडेक्स k से ऐरे को रोटेट करना होगा।

उदाहरण

इनपुट: arr[] = {1, 2, 3, 4, 5}
K1 = 1, K2 = 3, K3 = 6
आउटपुट:
2 3 4 5 1
4 5 1 2 3
2 3 4 5 1

एल्गोरिदम

शुरुआत
चरण 1: void leftRotate(int arr[], int n, int k) फंक्शन घोषित करें
    int cal = k % n घोषित करें
    i = 0 से n-1 तक लूप
        arr[(cal + i) % n] प्रिंट करें
    अंत
चरण 2: main() में
    array a[] = {1,2,3,4} घोषित करें
    int size = sizeof(a)/sizeof(a[0]) घोषित करें
    int k = 1 घोषित करें
    leftRotate(a, size, k) कॉल करें
    k = 2 सेट करें
    leftRotate(a, size, k) कॉल करें
    k = 3 सेट करें
    leftRotate(a, size, k) कॉल करें
रोकें

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

#include <bits/stdc++.h>
using namespace std;

void leftRotate(int arr[], int n, int k){
    int cal = k % n;
    for (int i = 0; i < n; i++)
        cout << (arr[(cal + i) % n]) << " ";
    cout << "\n";
}

int main(){
    int a[] = { 1, 2, 3, 4 };
    int size = sizeof(a) / sizeof(a[0]);
    int k = 1;
    leftRotate(a, size, k);
    k = 2;
    leftRotate(a, size, k);
    k = 3;
    leftRotate(a, size, k);
    return 0;
}

आउटपुट

उपरोक्त प्रोग्राम चलाने पर निम्नलिखित आउटपुट उत्पन्न होगा:

2 3 4 1
3 4 1 2
4 1 2 3
  1. C प्रोग्राम में ऐरे में तत्वों की अंतिम घटना को सापेक्ष क्रम में प्रिंट करें C प्रोग्राम में ऐरे में तत्वों की अंतिम घटना को सापेक्ष क्रम में प्रिंट करें

    समस्या विवरण तत्वों के साथ एक ऐरे a[] दिया गया है और कार्य सूची में दिए गए तत्वों की अंतिम घटनाओं को प्रिंट करना है। यहां हमें न केवल डुप्लिकेट तत्वों को हटाना है बल्कि हमें ऐरे में तत्वों की घटनाओं के क्रम को भी बनाए रखना है जैसा कि वे अंतिम बार हुए हैं। उदाहरण इनपुट: a[] = {4,2,2,4,1,5,1} आउटपुट

  1. C प्रोग्राम में अतिरिक्त स्पेस और संशोधन के बिना लिंक्ड लिस्ट का रिवर्स प्रिंट करें C प्रोग्राम में अतिरिक्त स्पेस और संशोधन के बिना लिंक्ड लिस्ट का रिवर्स प्रिंट करें

    समस्या विवरण कार्य लिंक्ड लिस्ट के अंत से शुरू होने वाले नोड्स को प्रिंट करना है बिना अतिरिक्त स्पेस का उपयोग किए, जिसका अर्थ है कि कोई अतिरिक्त वेरिएबल नहीं होना चाहिए, इसके बजाय हेड पॉइंटर जो पहले नोड को इंगित करता है, को स्थानांतरित किया जाएगा। उदाहरण इनपुट: 10 21 33 42 89 आउटपुट: 89 42 33 21 1

  1. C प्रोग्राम में ऐरे रोटेशन के लिए प्रोग्राम C प्रोग्राम में ऐरे रोटेशन के लिए प्रोग्राम

    समस्या विवरण एक C प्रोग्राम लिखें जो ऐरे को n स्थिति से बाएं घुमाए। C प्रोग्रामिंग में ऐरे को n बार बाएं घुमाने का तरीका। C प्रोग्राम में ऐरे को n स्थिति से बाएं घुमाने का तर्क। उदाहरण इनपुट: arr[] = 1 2 3 4 5 6 7 8 9 10, N = 3 आउटपुट: 4 5 6 7 8 9 10 1 2 3 व्याख्या ऐरे में तत्व पढ़ें, मान लें ar