저는 자바에서 기본 배열 문제를 연습하고 있습니다. 왼쪽/오른쪽 k 단위로 n 요소를 회전하는 문제가있었습니다. 나는 100 개 이상의 요소를 가지고있는 경우이 후Java 역 배열 방법은 어떻게 작동합니까?
return new int[]{arr[1],arr[2],arr[0]};
:
나는 작은 요소 배열을 처리하기 위해 내가 배열 int[]arr={1,2,3};
이 같은 난 그냥이 같은 요소의 위치를 전환 할 수 있습니다 방법을 알고 이 방법은 전혀 작동하지 않습니다. 그래서 나는 누군가가 그것을 다루기 위해 역 방법을 사용하는 것을 보았다.
public void rotateProblem(int[]arr,int k){ //k means rotate k units to right
k%=arr.length;
k=2;
reverse(arr, 0, arr.length - 1);
reverse(arr, 0, k - 1);
reverse(arr, k, arr.length - 1);
}
그러나 나는 모든이 방법은 배열을 반대로 않습니다 어떻게 그것을 얻을하지 않습니다, 그리고 왜 사람이 반대 방법을 나에게 설명 할 수 k%=arr.length;
를 사용할 필요합니까?
'reverse'메소드를 게시하십시오. 자바가 내장되어 있지 않습니다. –
'k % = arr.length;'는'k = 2; '를 가지고 있기 때문에 아무 것도하지 않습니다. 그러나 이것은 k의 큰 값을 처리 할 것으로 기대합니다. –