코딩테스트/Programmers
[Programmers] 입문) 배열 뒤집기
HONGGG
2023. 6. 27. 02:25
이번 문제는 딱히 별 생각 없이 진행했다.
만능인 STL에 이정도 함수가 없을리가 없다 생각해서이다.
예상은 적중했고 Array.Reverse함수를 발견했다.
해당 함수는 System만 포함되어도 사용할 수 있는 기본 전역 함수이기에 사용도 용의했다.
한가지 주의 사항이라면 Array.Reverse는 전역 함수로 반환 값이 없고 배열 자체를 뒤집는 것이기에 Array.Reverse자체를 반환하려는 뻘짓은 하지말자.
또한 배열에 바로 Reverse함수를 실행할 수도 있는데 이 경우 IEnumerable형 반환이 일어나기에 ToArray함수를 한번 더 거쳐야한다.
1. 배열을 순차적으로 순서를 거꾸로 변경한다.
2. ToArray를 통해 새로운 배열을 메모리에 할당한다.
위 과정을 모두 거쳐야하기에 되려 훨씬 느리고 메모리도 많이 잡아먹는 잡식성 괴물이 탄생한다. (Linq를 포함해야하는건 덤)
using System;
public class Solution {
public int[] solution(int[] num_list) {
Array.Reverse(num_list);
return num_list;
}
}