알고리즘 문제

알고리즘 문제 js 35 -문자열 내 마음대로 정렬하기

<zinny/> 2022. 2. 5. 12:09
728x90

내가 쓴 코드 

function solution(strings, n) {
    return strings.sort((a,b) => {			// 정렬 함수 사용 
        if(a[n] > b[n]){ return 1 } 		//a의 n번째 자리가 b의 n번째 자리보다 큰경우에 1을 리턴하고
        
        else if (a[n] <b[n]){ return -1}	//a의 n번째 자리가 b의 n번째 자리보다 작은 경우에는 -1을 리턴하고
        
        else if (a[n]==b[n]){				//a의 n번째 자리가 b의 n번째 자리랑 같은 경우 에는 
            if(a >= b){ return 1} 			//a가 b보다 크거나 같다면 1을 리턴하고
            else { return -1}				//아니면 0을리턴해라 
        }
    })
}

sort()함수는

 - 값이 양수 일때는 위치를 바꿔주고,

-  값이 음수 일때는 위치를 그대로 해준다.

 

기본적으로 a는 배열의 [0] 번째 부터 시작하고, b는 배열의 [1]번째 부터 시작하여 인덱스 값이 점점 늘어나면서 비교하게 된다. 

 

 

📍 https://programmers.co.kr/learn/courses/30/lessons/12915

 

코딩테스트 연습 - 문자열 내 마음대로 정렬하기

문자열로 구성된 리스트 strings와, 정수 n이 주어졌을 때, 각 문자열의 인덱스 n번째 글자를 기준으로 오름차순 정렬하려 합니다. 예를 들어 strings가 ["sun", "bed", "car"]이고 n이 1이면 각 단어의 인덱

programmers.co.kr

 

728x90