# heapq in Python to print all elements in sorted order from row and column wise sorted matrix

Given an n x n matrix, where every row and column is sorted in non-decreasing order. Print all elements of matrix in sorted order.

Examples:

Input : mat= [[10, 20, 30, 40], [15, 25, 35, 45], [27, 29, 37, 48], [32, 33, 39, 50]] Output : Elements of matrix in sorted order [10, 15, 20, 25, 27, 29, 30, 32, 33, 35, 37, 39, 40, 45, 48, 50]

This problem has existing solution please refer link. We will solve this problem in python with the same approach of merging two sorted arrays using **heapq module**.

`# Function to print all elements in sorted order ` `# from row and column wise sorted matrix ` `from` `heapq ` `import` `merge ` ` ` `def` `sortedMatrix(mat): ` ` ` ` ` `# initialize result variable with first row of matrix ` ` ` `result` `=` `mat[` `0` `] ` ` ` ` ` `# now traverse through complete matrix ` ` ` `# after first row and merge each row with ` ` ` `# result one by one ` ` ` `# after last operation result will contain ` ` ` `# list of sorted elements of matrix ` ` ` `for` `row ` `in` `mat[` `1` `:]: ` ` ` `result` `=` `list` `(merge(result,row)) ` ` ` ` ` `return` `result ` ` ` `if` `__name__ ` `=` `=` `"__main__"` `: ` ` ` `mat ` `=` `[[` `10` `, ` `20` `, ` `30` `, ` `40` `],[` `15` `, ` `25` `, ` `35` `, ` `45` `], \ ` ` ` `[` `27` `, ` `29` `, ` `37` `, ` `48` `],[` `32` `, ` `33` `, ` `39` `, ` `50` `]] ` ` ` `print` `'Elements of matrix in sorted order'` ` ` `print` `sortedMatrix(mat) ` |

*chevron_right*

*filter_none*

Output:

Elements of matrix in sorted order [10, 15, 20, 25, 27, 29, 30, 32, 33, 35, 37, 39, 40, 45, 48, 50]

This article is contributed by **Shashank Mishra (Gullu)**. If you like GeeksforGeeks and would like to contribute, you can also write an article using contribute.geeksforgeeks.org or mail your article to contribute@geeksforgeeks.org. See your article appearing on the GeeksforGeeks main page and help other Geeks.

Please write comments if you find anything incorrect, or you want to share more information about the topic discussed above.

## Recommended Posts:

- Print all elements in sorted order from row and column wise sorted matrix
- Count Negative Numbers in a Column-Wise and Row-Wise Sorted Matrix
- Count zeros in a row wise and column wise sorted matrix
- Search in a row wise and column wise sorted matrix
- Check if a grid can become row-wise and column-wise sorted after adjacent swaps
- Kth smallest element in a row-wise and column-wise sorted 2D array | Set 1
- Merge two sorted arrays in Python using heapq
- Find median in row wise sorted matrix
- Find a common element in all rows of a given row-wise sorted matrix
- Program to print elements of a Matrix row-wise skipping alternate elements
- Search in a sorted 2D matrix (Stored in row major order)
- Sort the matrix row-wise and column-wise
- Row-wise vs column-wise traversal of matrix
- Python | Get items in sorted order from given dictionary
- Print index of columns sorted by count of zeroes in the Given Matrix