...

[C언어] 전치 행렬의 구현 (Trans Matrix) 본문

CS/자료구조

[C언어] 전치 행렬의 구현 (Trans Matrix)

gi2 2021. 11. 2. 16:31

전치 행렬이란 ,

선형대수학에서 행과 열을 교환하여 얻는 행렬이다. 

즉,  주대각선을 축으로 하는 반사 대칭을 가하여 얻는 행렬이다. [위키백과] 

 

전치 행렬을 구현하는 방법

1) 초기화 되어 있는 2차원 배열 (original[m][n]) 을 준비한다. 

2) original[m][n]과 행과 열의 크기가 전치된 새로운 배열을 생성 한다. (Trans[n][m])

3) for 루프를 돌며 Trans[n][m] 에 original[m][n]값을 저장한다. 

 

전치 행렬 Code 

TransMatrix 함수이다. 

매개변수로 original 2차원 배열과 각 배열의 크기를 가져온다. 

새로운 2차원 배열을 생성한 후 , 이중 for 문 루프를 돌며 전치 행렬의 값을 채워넣는다. 

 

Main 함수이다. 

참고로 얘기하자면, 난 2차원 배열의 크기를 사용자로부터 할당 받도록 구현하였다. 

따라서 2차원 배열은 동적 할당의 형식으로 생성 되었다. 

2차원 배열을 생성하고 각 원소들을 rand() 를 통해 난수로 입력 받았다. 

TransMatrix 함수를 실행 시키고 각 배열들을 출력한 후 free 하도록 구성하였다. 

 

 

Comments