배열 안의 문자열 정리하기 (자동정렬sort, replace, 배열변경, 배열삭제)
function solution (strings, n){
var answer = [];
for(var i = 0; i < strings.length; i++) {
strings[i] = strings[i][n] + strings[i];
}
console.log(strings);
return answer;
}
solution (["sun", "bed", "car"], 1);
매개변수에 문자열 strings와 n 넣어줌.
문자열이므로 var answer = [ ]; (숫자열은 var answer = 0;)
for문 중괄호
strings[ i ] = strings[ i ][ n ] + strings[ i ]; 예를들어 srings[i]가 car 이고 n이 1일 경우, acar
strings[ i ] = car
strings[ i ][ n ] = a
strings[ i ] = car
strings[ i ] = strings[ i ][ n ] + strings[ i ] = acar
1 string 문자열의 가장 앞글자를 붙인 배열열 만들기 (for문)
n은 인덱스의 n번째 글자. strings[i][n]은 해당 문자열의 n번째 글자 (0, 1, 2, 3...)
solution (["sun", "bed", "car"], 1); 이렇게 하면 각 배열의 인덱스 1번째를 앞에 추가한것이므로
[ 'usun', 'ebed', 'acar' ] 이렇게 나옴.
여기서 sort입력. string.sort(); (문자 오름차순, abc순)
function solution (strings, n){
var answer = [];
for(var i = 0; i < strings.length; i++) {
strings[i] = strings[i][n] + strings[i];
}
strings.sort();
console.log(strings);
return answer;
}
solution (["sun", "bed", "car"], 1);
// [ 'acar', 'ebed', 'usun' ]
해석 :
1 첫번째 for문 : 앞글자에 n번째 인덱스를 추가
예를들어 n이 1이면
[ 'sun', 'bed', 'car' ] -> [ 'usun', 'ebed', 'acar' ]
2 string.sort( )로 문자 오름차순 만듦. abc순
[ 'usun', 'ebed', 'acar' ] -> [ 'acar', 'ebed', 'usun' ]
3 두번째 for문 : strings의 첫번째 인자를 없앰. 여기서 j를 쓴건 위와 헷갈릴까봐 문자만 바꿔쓴것.
.replace("string[ j] [ 0 ]" , " " ); 앞글자를 "" 빈칸으로만들어라. (없애라)
[ 'acar', 'ebed', 'usun' ] -> [ 'car', 'bed', 'sun' ]
function solution(strings, n) {
var answer = [];
for (var i = 0; i < strings.length; i++) {
strings[i] = strings[i][n] + strings[i];
}
strings.sort();
for(let j = 0; j < strings.length; j ++) {
strings[j] = strings[j].replace(strings[j][0],"");
}
console.log(strings);
return answer;
}
solution (["sun", "bed", "car"], 1);
//[ 'car', 'bed', 'sun' ]