Given a Matrix, remove rows with length K.
Input : test_list = [[4, 7], [8, 10, 12, 8], [10, 11], [6, 8, 10]], K = 2
Output : [[8, 10, 12, 8], [6, 8, 10]]
Explanation : [4, 7] and [10, 11] omitted as length 2 rows.
Input : test_list = [[4, 7], [8, 10, 12, 8], [10, 11], [6, 8, 10]], K = 3
Output : [[4, 7], [8, 10, 12, 8], [10, 11]]
Explanation : [6, 8, 10] omitted as length 3 rows.
In this, we check for the length of each row using len(), if found to be equal to K, that row is omitted from Matrix.
The original list is : [[4, 7], [8, 10, 12, 8], [10, 11], [6, 8, 10]] Filtered Matrix : [[8, 10, 12, 8], [6, 8, 10]]
In this, we use filter() to extract rows with lengths other than K. The lambda function is used to render length computation logic.
The original list is : [[4, 7], [8, 10, 12, 8], [10, 11], [6, 8, 10]] Filtered Matrix : [[4, 7], [10, 11], [6, 8, 10]]
Define a function named "omit_k_length_rows" that takes two arguments, a list of lists named "test_list" and an integer named "K".
Create an empty list named "res" to store the filtered results.
Iterate through each list in "test_list" using a for loop.
Check if the length of the current list is not equal to "K" using the "len" function and the "!=" operator.
If the length is not equal to "K", add the current list to the "res" list using the "+=" operator and list concatenation.
Return the filtered "res" list.
Use the function to solve the given input and print the output.
Output[[8, 10, 12, 8], [6, 8, 10]]
[[4, 7], [8, 10, 12, 8], [10, 11]]
Time Complexity: O(n*m), where n is the number of rows and m is the maximum length of the rows
Auxiliary Space: O(n)