"यदि कोई कर्मचारी अपना काम अच्छी तरह से करना चाहता है, तो उसे पहले अपने औजारों को तेज करना होगा।" - कन्फ्यूशियस, "द एनालेक्ट्स ऑफ कन्फ्यूशियस। लू लिंगगोंग"
मुखपृष्ठ > प्रोग्रामिंग > मैट्रिक्स को सहजता से उसी स्थान पर घुमाएँ: एक व्यापक मार्गदर्शिका

मैट्रिक्स को सहजता से उसी स्थान पर घुमाएँ: एक व्यापक मार्गदर्शिका

2024-10-31 को प्रकाशित
ब्राउज़ करें:238

Effortlessly Rotate a Matrix in Place: A Comprehensive Guide

कंप्यूटर विज्ञान और तकनीकी साक्षात्कार में मैट्रिक्स को 90 डिग्री दक्षिणावर्त घुमाना एक आम समस्या है। यह समस्या विशेष रूप से दिलचस्प हो सकती है क्योंकि लक्ष्य नए मैट्रिक्स के लिए अतिरिक्त मेमोरी का उपयोग किए बिना, उसी स्थान पर रोटेशन करना है। इस गाइड में, हम यह पता लगाएंगे कि स्पष्ट स्पष्टीकरण और उदाहरण कोड के साथ इसे कैसे प्राप्त किया जाए।


समस्या विवरण

आपको एक छवि का प्रतिनिधित्व करने वाला एन एक्स एन 2डी मैट्रिक्स ए दिया गया है। आपका काम छवि को उसी स्थान पर 90 डिग्री पर दक्षिणावर्त घुमाना है। यदि आप अतिरिक्त सरणी का उपयोग करते हैं, तो आपको केवल आंशिक क्रेडिट प्राप्त होगा।

समस्या बाधाएँ

1≤n≤1000

इनपुट प्रारूप

पूर्णांकों का 2डी मैट्रिक्स ए

आउटपुट स्वरूप

2डी घुमाया गया मैट्रिक्स

उदाहरण इनपुट

[
    [1, 2],
    [3, 4]
]

उदाहरण आउटपुट

[
    [3, 1],
    [4, 2]
]

उदाहरण स्पष्टीकरण

मैट्रिक्स को 90 डिग्री तक घुमाने के बाद:

  • 1 स्थिति 2 पर जाता है
  • 2 स्थिति 4 पर जाता है
  • 4 स्थिति 3 पर जाता है
  • 3 स्थिति 1 पर जाता है

चरण-दर-चरण समाधान

चरण 1: मैट्रिक्स को स्थानांतरित करें

  • मैट्रिक्स को ट्रांसपोज़ करने का अर्थ है उसकी पंक्तियों को कॉलम में और कॉलम को पंक्तियों में परिवर्तित करना। यह मुख्य विकर्ण (ऊपर-बाएँ से नीचे-दाएँ विकर्ण) में तत्वों की अदला-बदली करके किया जा सकता है।

चरण 2: प्रत्येक पंक्ति को उल्टा करें

  • एक बार जब मैट्रिक्स ट्रांसपोज़ हो जाता है, तो अगला चरण प्रत्येक पंक्ति को उल्टा करना होता है। यह प्रभावी रूप से मैट्रिक्स को 90 डिग्री दक्षिणावर्त घुमाएगा।

उदाहरण कोड

रोटेशन करने के लिए यहां एक जावास्क्रिप्ट फ़ंक्शन है:

function rotateMatrix(A) {
    const n = A.length;

    // Step 1: Transpose the matrix
    for (let i = 0; i 





संहिता की व्याख्या

मैट्रिक्स को स्थानांतरित करें:

  • दो नेस्टेड लूप का उपयोग करके मैट्रिक्स के माध्यम से लूप करें।
  • मैट्रिक्स को स्थानांतरित करने के लिए तत्वों A[i][j] और A[j][i] को स्वैप करें।

प्रत्येक पंक्ति को उल्टा करें:

  • ट्रांसपोज़्ड मैट्रिक्स में प्रत्येक पंक्ति को उलटने के लिए अंतर्निहित रिवर्स() विधि का उपयोग करें।

घुमाया गया मैट्रिक्स लौटाएँ:

  • प्रत्येक पंक्ति को ट्रांसपोज़ करने और उलटने के बाद, मैट्रिक्स को 90 डिग्री दक्षिणावर्त घुमाया जाता है।

निष्कर्ष

मैट्रिक्स को जगह में घुमाना एक मूल्यवान कौशल है जो सरणी हेरफेर और इन-प्लेस एल्गोरिदम की आपकी समझ को प्रदर्शित करता है। मैट्रिक्स को स्थानांतरित करके और फिर प्रत्येक पंक्ति को उलट कर, आप अतिरिक्त स्थान का उपयोग किए बिना वांछित रोटेशन प्राप्त कर सकते हैं। तकनीकी साक्षात्कार और कोडिंग चुनौतियों में अपनी समस्या-समाधान क्षमताओं को बढ़ाने के लिए इस पद्धति का अभ्यास करें।

विज्ञप्ति वक्तव्य इस लेख को यहां पुन: प्रस्तुत किया गया है: https://dev.to/imkrunalkanojiya/effortlessly-rotate-a-matrix-in-place-a-comprehenive-guide-251j?1 यदि कोई उल्लंघन है, तो कृपया स्टडी_गोलंग@163.com पर संपर्क करें। इसे हटाने के लिए
नवीनतम ट्यूटोरियल अधिक>

चीनी भाषा का अध्ययन करें

अस्वीकरण: उपलब्ध कराए गए सभी संसाधन आंशिक रूप से इंटरनेट से हैं। यदि आपके कॉपीराइट या अन्य अधिकारों और हितों का कोई उल्लंघन होता है, तो कृपया विस्तृत कारण बताएं और कॉपीराइट या अधिकारों और हितों का प्रमाण प्रदान करें और फिर इसे ईमेल पर भेजें: [email protected] हम इसे आपके लिए यथाशीघ्र संभालेंगे।

Copyright© 2022 湘ICP备2022001581号-3