배열 재배치 함수 추가

This commit is contained in:
yoosangwook 2024-07-02 14:34:09 +09:00
parent c102c0592f
commit 64dab76a6a

View File

@ -154,3 +154,26 @@ export const getStartIndex = (lines) => {
return smallestIndex return smallestIndex
} }
/**
* 함수는 개의 매개변수를 받습니다: array와 index.
* array는 재배열할 대상 배열입니다.
* index는 재배열의 기준이 배열 내의 위치입니다.
* 함수는 먼저 index 위치부터 배열의 마지막 요소까지를 추출합니다(fromIndexToEnd).
* 다음, 배열의 처음부터 index 위치까지의 요소를 추출합니다(fromStartToIndex).
* 마지막으로, fromIndexToEnd와 fromStartToIndex 부분을 concat 메소드를 이용해 합칩니다.
* 따라서, 함수는 주어진 index를 기준으로 배열을 부분으로 나누고, index부터 시작하는 부분을 앞에 두고, 뒤에 index 이전의 부분을 이어붙여 새로운 배열을 생성합니다. 이는 배열의 회전(rotating) 연산을 수행하는 것과 유사합니다.
* @param array 재배열할 대상 배열
* @param index 재배열 기준이 배열 내의 인덱스
* @returns {*} 새로 재배열된 배열
*/
export const rearrangeArray = (array, index) => {
// 배열의 특정 인덱스부터 마지막 요소까지를 가져옵니다.
const fromIndexToEnd = array.slice(index)
// 배열의 처음부터 특정 인덱스까지의 요소를 가져옵니다.
const fromStartToIndex = array.slice(0, index)
// 두 부분을 concat 메소드를 이용해 합칩니다.
return fromIndexToEnd.concat(fromStartToIndex)
}