Computer >> कंप्यूटर >  >> प्रोग्रामिंग >> C++

C++ में एक मैट्रिक्स को वैकल्पिक तरीके से (बाएं से दाएं फिर दाएं से बाएं) प्रिंट करें


इस समस्या में, हमें 2D array दिया जाता है। हमारा काम पहली पंक्ति से शुरू होने वाले सरणी के सभी तत्वों को बाएं से दाएं, फिर अगली पंक्ति में दाएं से बाएं और फिर बाएं से दाएं और इसी तरह प्रिंट करना है।

समस्या को समझने के लिए एक उदाहरण लेते हैं।

Input: array = {
   {2, 5}
   {4, 9}
}
Output: 2 5 9 4

इस समस्या को हल करने के लिए, हम एक पंक्ति के दिए गए दिशा (LtoR और RtoL) में तत्वों को प्रिंट करेंगे। और प्रत्येक पुनरावृत्ति के बाद मुद्रण की दिशा दिखाने के लिए ध्वज तत्व स्विच हो जाएगा।

यह समय जटिलता के साथ एक आसान और कुशल समाधान है =O(R*C)

उदाहरण

हमारे समाधान के कार्यान्वयन को दिखाने के लिए कार्यक्रम

#include<iostream>
using namespace std;
#define R 3
#define C 3
void printAlternateMatrix(int arr[R][C]) {
   bool direction = true;
   for (int i=0; i<R; i++){
      if (direction){
         for (int j=0; j<C; j++)
            printf("%d ", arr[i][j]);
      } else{
         for (int j=C-1; j>=0; j--)
            printf("%d ",arr[i][j]);
      }
      direction = !direction;
   }
}
int main() {
   int arr[][C] = {
      { 23 , 50 , 4 },
      { 89 , 9 , 34 },
      { 75 , 1 , 61 },
   };
   cout<<"Matrix in alternate order is :\n";
   printAlternateMatrix(arr);
   return 0;
}

आउटपुट

वैकल्पिक क्रम में मैट्रिक्स है -

23 50 4 34 9 89 75 1 61

  1. दिए गए मैट्रिक्स को C++ में वामावर्त सर्पिल रूप में प्रिंट करें

    इस समस्या में, हमें एक 2-आयामी मैट्रिक्स दिया गया है। और हमारा काम मैट्रिक्स के तत्वों को वामावर्त सर्पिल में से प्रिंट करना है। वामावर्त सर्पिल रूप - यह एक सर्पिल ट्रैवर्सल है जो ऊपर-बाएं से शुरू होता है और वामावर्त दिशा में पहले नीचे-दाएं-ऊपर-बाएं जाता है। वामावर्त ट्रैवर्सल 1 5 9 13 14 15 16

  1. बाइनरी ट्री के सभी लीफ नोड्स को C++ में दाएं से बाएं प्रिंट करें

    इस समस्या में, हमें एक बाइनरी ट्री दिया जाता है और हमें बाइनरी ट्री के सभी लीफ नोड्स को दाएं से बाएं प्रिंट करना होता है। आइए समस्या को समझने के लिए एक उदाहरण लेते हैं इनपुट - आउटपुट - 7 4 1 इस समस्या को हल करने के लिए, हमें बाइनरी ट्री को पार करना होगा। यह ट्रैवर्सल दो तरह से किया जा सकता है