題目
Arrays: Left Rotation
舉例輸入
5 4
1 2 3 4 5
舉例輸出
5 1 2 3 4
解析
輸入為長度為5的陣列,向左移動四次
遇到這種題目如果讓他一次一次跑肯定超時
因此首先計算他最後一次差一定幾位會完整
來推測那時陣列的狀況
function rotLeft(a, d) {
//計算左轉d圈後仍需移?位
d = (d % a.length);
// 假設a[1,2,3,4,5] d =7,即為往左移兩位
//a.slice(2)=[3,4,5],a.slice(0, 2)= [1, 2]
return a.slice(d).concat(a.slice(0, d));
}