배열뒤집기

1. 문제


2. 나의 생각

배열의 길이가 5인 배열을 만들었다면 0 과 4의 자리를 바꿔주고 1 과 3의 자리를 바꿔는 식으로 접근했다. 

그 다음 answer[]에 넘겨주는 식으로 마무리 했다. 

 

class Solution {
	public int[] solution(int[] num_list) {
		int num = num_list.length-1;
		int[] answer = new int[num_list.length];
		for(int i=0; i<num_list.length/2; i ++) {
			int tmp = num_list[num-i];
			num_list[num-i] =num_list[i];
			num_list[i] =tmp;
		}
		for(int i = 0 ; i < num_list.length ; i++)
			answer[i] = num_list[i];
    	return answer ;
    }
}

3. 다른 답안 

다른분들이 해놓으신 것을 보니 내가 괜히 어렵게 접근 했다는 생각이 든다. 

그냥 for문으로 뒤에서 -(i)씩 증가하면서 빼가면서 그냥 집어 넣어주면 되는 문제였다.. 알고리즘이란..

 

class Solution {
    public int[] solution(int[] num_list) {
        int[] answer = new int[num_list.length];
        for(int i = 0; i< num_list.length; i++){
            answer[i] = num_list[num_list.length-i-1];
        }
        return answer;
    }
}

'Programmers 문제풀이 > Lv.0' 카테고리의 다른 글

편지  (0) 2022.11.23
배열 자르기  (0) 2022.11.23
짝수 홀수 개수  (0) 2022.11.23
문자열 뒤집기  (0) 2022.11.22
점의 위치 구하기  (0) 2022.11.22