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

পাইথনে রো এবং কলাম ওয়াইজ সর্টেড ম্যাট্রিক্স থেকে সর্টেড অর্ডারে সব এলিমেন্ট প্রিন্ট করা


কখনো কখনো আমাদের একটি ম্যাট্রিক্সের সব এলিমেন্ট সর্টেড অর্ডারে প্রয়োজন হয়। কিন্তু যেহেতু ম্যাট্রিক্স রো এবং কলাম আকারে থাকে, স 탓ে সাদারন সর্টিং অ্যালগরিদম প্রয়োগ করে ফলাফল পাওয়া যায় না। বরং আমরা নিচের ইউজার ডিফাইনড ফাংশনগুলো ব্যবহার করে এলিমেন্টগুলো সর্টেড পেতে পারি।

উদাহরণ

def heapq(a, k, i):
    greater = i
    l = 2 * i + 1
    r = 2 * i + 2
    if l < k and a[i] < a[l]:
        greater = l
    if r < k and a[greater] < a[r]:
        greater = r
    if greater != i:
        a[i], a[greater] = a[greater], a[i]
        heapq(a, k, greater)

def Sort(val):
    n = len(val)
    for i in range(n, -1, -1):
        heapq(val, n, i)
    for i in range(n - 1, 0, -1):
        val[i], val[0] = val[0], val[i]
        heapq(val, i, 0)

x = [11, 3, 50, 75, 4, 32, 9, 2, 15]
Sort(x)
n = len(x)
print("Sorted values are")
for i in range(n):
    print("%d" % x[i])

উপরের কোড রান করলে নিচের ফলাফল পাওয়া যায়:

আউটপুট

Sorted values are 2 3 4 9 11 15 32 50 75
  1. পাইথনে সারি ও কলামের সর্বোচ্চ উপাদান দিয়ে মূল ম্যাট্রিক্স পুনর্গঠন করুন

  2. পাইথনে ম্যাট্রিক্সের সকল সারির সাধারণ স্বতন্ত্র উপাদান খুঁজে বের করা

  3. পাইথনে ম্যাট্রিক্সে নির্দিষ্ট সেলের সারি ও কলাম বাদ দিয়ে বাকি সব উপাদানের যোগফল

  4. পাইথনে লিস্ট এলিমেন্টের রিলেটিভ অর্ডার বের করা (Finding relative order)