কখনও কখনও আমাদের একটি সাজানো ক্রমে একটি ম্যাট্রিক্সের সমস্ত উপাদান প্রয়োজন। কিন্তু একটি ম্যাট্রিক্স যেহেতু সারি এবং কলামের আকারে, তাই আমরা ফলাফল পেতে সাধারণ সাজানোর অ্যালগরিদম প্রয়োগ করি না। বরং আমরা উপাদানগুলি সাজানোর জন্য নীচের ব্যবহারকারীর সংজ্ঞায়িত ফাংশনগুলি ব্যবহার করি৷
উদাহরণ
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