Skip to content
Open
Changes from 1 commit
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
55 changes: 55 additions & 0 deletions matrix/transpose_of_matrix.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,55 @@
""""
this program returns the transpose of a given 2-D matrix
The transpose of a matrix is a new matrix formed by flipping the original matrix over its diagonal.

Check failure on line 3 in matrix/transpose_of_matrix.py

View workflow job for this annotation

GitHub Actions / ruff

Ruff (E501)

matrix/transpose_of_matrix.py:3:89: E501 Line too long (99 > 88)

In python a matrix is represented by list inside a list
suppose given matrix A is
[[4,5,2],
A= [7,5,9],
[1,8,3]]
then it's transpose will be
[[4,7,1],
A^t = [5,5,8],
[3,9,3]]

"""
def transpose_matrix(matrix: list[list[int]]) ->list[list[int]]:

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

As there is no test file in this pull request nor any test function or class in the file matrix/transpose_of_matrix.py, please provide doctest for the function transpose_matrix

"""""
creating a new empty matrix for storing transposed values
number of rows in the matrix=len(matrix)
number of columns =number of elements in the matrix=number of element in 1st row of the matrix=len(matrix[0])

Check failure on line 20 in matrix/transpose_of_matrix.py

View workflow job for this annotation

GitHub Actions / ruff

Ruff (E501)

matrix/transpose_of_matrix.py:20:89: E501 Line too long (113 > 88)
"""
transposed_matrix=[[0]*len(matrix) for _ in range(len(matrix[0]))]
"""

Check failure on line 23 in matrix/transpose_of_matrix.py

View workflow job for this annotation

GitHub Actions / ruff

Ruff (W291)

matrix/transpose_of_matrix.py:23:8: W291 Trailing whitespace
created an empty matrix of dimension len(matrix)*len(matrix[0])
"""
for i in range(len(matrix)):
for j in range(len(matrix[0])):
"""

Check failure on line 28 in matrix/transpose_of_matrix.py

View workflow job for this annotation

GitHub Actions / ruff

Ruff (W291)

matrix/transpose_of_matrix.py:28:16: W291 Trailing whitespace
traversing the matrix element-by-element starting from 1st element of 1st row to last element of last row

Check failure on line 29 in matrix/transpose_of_matrix.py

View workflow job for this annotation

GitHub Actions / ruff

Ruff (E501)

matrix/transpose_of_matrix.py:29:89: E501 Line too long (109 > 88)
1st loop--> traversing through the row
2nd loop--> traversing through the column
by this whole matrix is traversing

"""

Check failure on line 34 in matrix/transpose_of_matrix.py

View workflow job for this annotation

GitHub Actions / ruff

Ruff (W291)

matrix/transpose_of_matrix.py:34:8: W291 Trailing whitespace
transposed_matrix[j][i]=matrix[i][j]
"""
keeping the values of matrix to resultant matrix in transposed order
for example 2nd element of 3rd row will be 3rd element of 2nd row
1nd element of 2rd row will be 2rd element of 1nd row
likwise diagonal element will reamin intact

Check failure on line 40 in matrix/transpose_of_matrix.py

View workflow job for this annotation

GitHub Actions / ruff

Ruff (W291)

matrix/transpose_of_matrix.py:40:52: W291 Trailing whitespace

"""

Check failure on line 42 in matrix/transpose_of_matrix.py

View workflow job for this annotation

GitHub Actions / ruff

Ruff (W291)

matrix/transpose_of_matrix.py:42:12: W291 Trailing whitespace
#return the transposed_matrix
return transposed_matrix
"""
check for main function
give input and call the transpose_matrix () function with matirx as a parameter
"""
if __name__=="__main__":
matrix=[[1, 2, 3, 4], [5, 6, 7, 8], [9, 10, 11, 12]]
print(transpose_matrix(matrix))


Check failure on line 53 in matrix/transpose_of_matrix.py

View workflow job for this annotation

GitHub Actions / ruff

Ruff (W293)

matrix/transpose_of_matrix.py:53:1: W293 Blank line contains whitespace

Check failure on line 54 in matrix/transpose_of_matrix.py

View workflow job for this annotation

GitHub Actions / ruff

Ruff (W293)

matrix/transpose_of_matrix.py:54:1: W293 Blank line contains whitespace