ในบทความนี้ เราจะเรียนรู้เกี่ยวกับวิธีแก้ปัญหาตามที่ระบุด้านล่าง
แจ้งปัญหา − เราได้รับเมทริกซ์ เราต้องแสดงทรานสโพสของเมทริกซ์
ทรานสโพสของเมทริกซ์ได้จากการแทนที่ค่าปัจจุบันที่ A[i][j] ด้วย A[j][i].
ทีนี้มาดูแนวคิดในการใช้งานด้านล่างกัน:
วิธีที่ 1:การสร้างเมทริกซ์ใหม่เพื่อเก็บทรานสโพสของเมทริกซ์อินพุต
ตัวอย่าง
def transpose(A,B):
for i in range(M):
for j in range(N):
B[i][j] = A[j][i]
# driver code
M = N = 4
A = [ [0, 1, 1, 0],
[0, 2, 0, 2],
[0, 3, 0, 3],
[0, 0, 4, 4]]
B = A[:][:] # empty matrix
transpose(A, B)
print("Transformed matrix is")
for i in range(N):
for j in range(N):
print(B[i][j], " ", end='')
print() ผลลัพธ์
Transformed matrix is 0 0 0 0 0 2 3 0 0 3 0 4 0 0 4 4
วิธีที่ 2:การจัดเก็บทรานสโพสลงในเมทริกซ์อินพุต
ตัวอย่าง
# function
def transpose(A):
for i in range(M):
for j in range(i+1, N):
A[i][j], A[j][i] = A[j][i], A[i][j]
M = N = 4
A = [ [0, 1, 1, 0],
[0, 2, 0, 2],
[0, 3, 0, 3],
[0, 0, 4, 4]]
transpose(A)
print("Transformed matrix is")
for i in range(M):
for j in range(N):
print(A[i][j], " ", end='')
print() ผลลัพธ์
Transformed matrix is 0 0 0 0 0 2 3 0 0 3 0 4 0 0 4 4
บทสรุป
ในบทความนี้ เราได้เรียนรู้วิธีย้ายเมทริกซ์