본문 바로가기
Computer Science/Programmers

[C++] 프로그래머스 배열 뒤집기, Reverse an Array

by 기억보다 기록을 2023. 12. 26.
반응형

 

 

 

 

 

 

예제 설명


정수가 들어 있는 배열 num_list가 매개변수로 주어집니다. num_list의 원소의 순서를 거꾸로 뒤집은 배열을 return하도록 solution 함수를 완성해주세요.

 

 

제한사항

 

1 ≤ num_list의 길이 ≤ 1,000
0 ≤ num_list의 원소 ≤ 1,000

 

 

입출력 예 => num_list result

[1, 2, 3, 4, 5]          =>      [5, 4, 3, 2, 1]
[1, 1, 1, 1, 1, 2]      =>      [2, 1, 1, 1, 1, 1]
[1, 0, 1, 1, 1, 3, 5]  =>      [5, 3, 1, 1, 1, 0, 1]

 

 

입출력 예 설명
입출력 예 #1
num_list가 [1, 2, 3, 4, 5]이므로 순서를 거꾸로 뒤집은 배열 [5, 4, 3, 2, 1]을 return합니다.

 

입출력 예 #2
num_list가 [1, 1, 1, 1, 1, 2]이므로 순서를 거꾸로 뒤집은 배열 [2, 1, 1, 1, 1, 1]을 return합니다.

 

입출력 예 #3
num_list가 [1, 0, 1, 1, 1, 3, 5]이므로 순서를 거꾸로 뒤집은 배열 [5, 3, 1, 1, 1, 0, 1]을 return합니다.

 


 

 

문제 해결


해결법 1 :  뒤에서 담기 

#include <string>
#include <vector>

using namespace std;

vector<int> solution(vector<int> list) {
    vector<int> answer;
    
    for(int i = list.size()-1; i >= 0; i--){
       answer.push_back(list[i]); 
    }
    
    return answer;
}

 

 


 

해결법 2 :  Swap

 

#include <string>
#include <vector>

using namespace std;

vector<int> solution(vector<int> list) {
    int size = list.size();
    
    for(int i = 0; i < size / 2; i++){
        int sampleList = list[i];
        list[i] = list[size - 1 - i];
        list[size - 1 - i] = sampleList;
        
    }
    return list;
}

 

 

 

 


 

 

 

 

 

 

 
반응형