2017-11-21 20 views
-3

나는 C++ 코드에서이 작업을 수행 할 :2 차원 배열에서 행을 교환하는 가장 좋은 방법은 무엇입니까?

  • 4 행과 5 열 배열을 초기화;

  • 사용자에게 0에서 4까지의 두 행 번호를 묻습니다.

  • 사용자가 정의한 행을 2D 배열로 스왑합니다.

+2

괜찮습니까? 나는 많은 것을 원한다. 그러나 일반적으로 나는 인터넷상의 사람들이 나를 위해 그들을 할 것이라고 기대하지 않는다. 아직 코드 작성을 시도해 보셨습니까? 특별한 문제가 있었습니까? 또한 먼저 검색해 보셨습니까? 이미 동일한 질문과 답변이 있습니다 (예 : https://stackoverflow.com/questions/33759399/swapping-two-rows-in-a-matrix and https://stackoverflow.com/questions/3930987/swapping-2-numbers-in-2-dimensional-array https://stackoverflow.com/questions/26696705/swaprows-or-columns-of-a-2d-array-in-o1-time-in-c –

+0

범위는 행에 대해 0 ~ 3이어야합니다. . 인덱스가 4 인 행은 경계 외부에 있습니다. –

답변

0

당신은 B.

에 행 A에서 그것을 교환 일시적으로 당신이 "최고"가 무슨 뜻인지 확실하지, 속도 나 메모리의 관점에서 이것입니다

각 값을 유지하기 위해 별도의 변수를 선언 할 수 요구 사항? 만약 대신, 당신은 대신 단순히 포인터를 교환 할 수있는 행 포인터의 배열을 사용했다 2 차원 배열, 그러나

let arr be array 
let a,b be row indices that are swapped 
for each column index i 
    swap arr[a][i] and arr[b][i] 

:

1

는 다음과 같은 알고리즘을 사용할 수 있습니다.