Relative Sort Array

LeetCode 題目: 1122. Relative Sort Array

My solution:

/**
 * @param {number[]} arr1
 * @param {number[]} arr2
 * @return {number[]}
 */
let relativeSortArray = (arr1, arr2) => {
    let left = 0, right = 0, stack = [];
    while(right < arr2.length){
        arr1[left] === arr2[right] ? stack.push(arr1.splice(left, 1).at(0)) : left++;    
        if(left >= arr1.length){
            left = 0;
            right++;
        }
    }
    arr1.sort((a, b) => a - b);
    return stack.concat(arr1);
};
profile-image
Hi, 我是 Zeki。目前為一名前端工程師。我相信科技始終來自於人性,是用來幫助人們過上更有品質的生活的,但願也希望如此。