728x90
public string[] solution(string[] strings, int n)
{
strings.ToList().Sort((x,y) => x[n].CompareTo(y[n]));
return strings.ToArray();
}
가끔 알고리즘 문제 풀경우 한줄로 코딩하기 위해 이런식으로 작성할 경우가 있다.
여기서 가장 큰 맹점은 strings.ToList()는 strings자체를 List로 변환하는 것이 아니라 List를 반환해 주는 함수이다.
위 방식으로는 strings가 정렬되지 않는다.
따라서 아래의 방식과 같이 한번 반환값을 받아준 뒤 정렬을 실행해야된다
public string[] solutions(string[] strings, int n)
{
List<string> newStrings = strings.ToList();
newStrings.Sort((x, y) => x[n].CompareTo(y[n]));
return newStrings.ToArray();
}
물론 위 경우는 Array.Sort()를 사용하면 간편하다.
728x90
'알고리즘문제 풀어보기' 카테고리의 다른 글
맨버-마이어스 알고리즘 (0) | 2024.07.15 |
---|---|
프로그래머스 - 타겟넘버 <알고리즘 비트연산 계산> (0) | 2024.04.27 |
C# - 프로그래머스 바탕화면정리 - 문자열 문제 (0) | 2024.03.26 |
C# 알고리즘 - Combination (0) | 2024.02.19 |
문제풀때 생각해야 할 사항들 (0) | 2023.01.12 |