The problem is to write a function (or method, depending on the programming language) that takes a matrix (represented as a 2D array or list of lists) as input and returns a new matrix that is the transpose of the original matrix.