কম্পিউটার টিউটোরিয়াল

পাইথনে ম্যাট্রিক্সের কলাম সোর্ট করুন


मान लीजिए हमारे पास एक मैट्रिक्स है, हमें मैट्रिक्स के प्रत्येक कॉलम को आरोही क्रम में सॉर्ट करना है।

यदि इनपुट इस तरह है:

112131
664
1118

तो आउटपुट होगा:

164
6118
112131

इसे हल करने के लिए हम निम्नलिखित चरणों का पालन करेंगे:

  • R := मैट्रिक्स की पंक्ति संख्या, C := मैट्रिक्स की कॉलम संख्या
  • res := दिए गए मैट्रिक्स के समान आकार का मैट्रिक्स, 0 से भरा हुआ
  • col को 0 से C तक के लिए, करें:
    • values := मैट्रिक्स[col] के तत्वों को एक वेक्टर के रूप में लें
    • row को 0 से R तक के लिए, करें:
      • res[row, col] := values से अंतिम तत्व हटाएं
  • res लौटाएं

बेहतर समझ के लिए निम्नलिखित कार्यान्वयन देखें:

उदाहरण

class Solution:
    def solve(self, matrix):
        R = len(matrix)
        C = len(matrix[0])
        res = [[0] * C for _ in range(R)]
        for col in range(C):
            values = [r[col] for r in matrix]
            values.sort(reverse=True)
            for row in range(R):
                res[row][col] = values.pop()
        return res

ob = Solution()
matrix = [[11, 21, 31],[6, 6, 4],[1, 11, 8]]
print(ob.solve(matrix))

इनपुट

[[11, 21, 31], [6, 6, 4], [1, 11, 8]]

आउटपुट

[[1, 6, 4],[6, 11, 8],[11, 21, 31]]

  1. পাইথনে sort() মেথড

  2. পাইথনে ২D ম্যাট্রিক্স-II এ সার্চ করা (Search a 2D Matrix II)

  3. পাইথনে রঙ সর্ট করা

  4. পাইথনে ম্যাট্রিক্স ট্রান্সপোজ (Transpose) করা