一定是連續數列嗎
是的
@大云之下:
JS的寫法
var arr = [1, 2, 3, 4, 5, 6, 7, 8, 9];
var arr1 = [];
var arr2 = [];
var arr3 = [];
for (var i = 0; i < arr.length; i++) {
if (arr[i] % 3 == 1) {
arr1.push(arr[i]);
} else if (arr[i] % 3 == 2) {
arr2.push(arr[i]);
} else {
arr3.push(arr[i]);
}
}
@RosonJ: 可以可以,,,
@RosonJ: 阿,一会儿没看,让你抢先了.....
@会长:
好多人比我快,我是運氣好哈哈
变化规则是什么?
规律就是每三个 的第一个放到 第一个数组,第二个放到第二个数组 第三个放到第三个数组
是147,258,369 我好像写错了
什么算法?不是 147,258,369?
是147,258,369 我好像写错了
所以怎么实现?
@大云之下: 这不是很简单?什么语言?
@顾晓北: 没啥语音js就,
除3余数相等的放在一起??
最简单的就是之间循环啊,代码思路进入下,可能语法上会有点问题,好长时间没写js了
let length = length(arr);
for(i=0; i <= length; i = i + 3) {
if(arr.hasOwnProperty(key) ) arr1.push(arr[i]);
if(arr.hasOwnProperty(key) ) arr2.push(arr[i+1]);
if(arr.hasOwnProperty(key) ) arr3.push(arr[i+2]);
}
我看看,感谢感谢
var arr = [1,2,3,4,5,6,7,8,9]
var o = {}
arr.every(function(item,i){
(o[i%3] = o[i%3]||[]).push(item)
return true
})
再简化一下就是这样
var arr = [1,2,3,4,5,6,7,8,9]
var o = {}
arr.every((item,i) =>(o[i%3] = o[i%3]||[]).push(item))
@dudu
– 大云之下 4年前