var rotate = function(nums, k) {
k = k % nums.length
for(let i=0;i<k;i++){
nums.unshift(nums.pop())
}
};
첫 코드로 testcode는 성공했으나 시간복잡도가 O(n * k) 로 submit이 성공하지 않았다.
var rotate = function(nums, k) {
const len = nums.length
k = k % len
const arr = nums.splice(len-k,len)
nums.unshift(...arr)
};
그래서 일일이 꺼내고 앞으로 넣어주고는 시간복잡도가 구리니 몇번을 해야하는지 위의 코드에서 계산했기때문에
계산한걸 기반으로 한번에 잘라서 앞으로 넣어야겠다고 생각할수 있었다.
https://leetcode.com/problems/rotate-array/description/?envType=study-plan-v2&envId=top-interview-150