我有一个这样的数组:
var my_array = [[6, 2], [7, 3], [9, 4], [9, 6], [3, 7]]
。我想将数组按不同的组进行排序,如下所示:
var result = [ [6, 2], [7, 3], [9, 4] ],
[ [9, 6], [3, 7] ]
因此,正如您所看到的,排序方法应该将所有数组分组,它们的数组[1]
值匹配在一起(如升序行)
因此,以上示例中的值result[0][1]
--
组结果[1][0]
--
顺便说一句:my_array-数组已经排序,因此my_array[x][1]
我不知道该如何编码,所以到现在为止我只知道这些:
var my_array = [[6, 2], [7, 3], [9, 4], [9, 6], [3, 7]]
function sort_array(array) {
var group=[];
for (var i=array[0][1]; i<3; i++) {
if (array[i+1][1] == i) {
group.push(array[i+1])
}
else {
}
}
return group;
}
console.log(sort_array(my_array));
你可以使用递归进行分组,它基本上比较当前和下一个数字,如果下一个数字是连续的,它将继续调用自己,如果它不是连续的,它将添加一个新组然后调用自己,直到没有下一个值。
"use strict" // this will allow tail call recursion in modern browsers
const my_array = [[5, 0], [6, 2], [7, 3], [9, 4], [9, 6], [3, 7], [4, 10]]
function groupConsecutiveYs([curr, ...rest], acc = [[]]) {
const next = rest[0]
// add to current group
acc[acc.length - 1].push(curr)
if (typeof next === 'undefined') // we are done return the accumulator
return acc
// if next is not consecutive add another grouping
if (curr[1] !== next[1] - 1)
acc.push([])
// call recursive function again
return groupConsecutiveYs(rest, acc)
}
console.log(
groupConsecutiveYs(my_array)
)
<script src="https://codepen.io/synthet1c/pen/KyQQmL.js?concise=true"></script>
我理解您的要求;
var my_array = [[6, 2], [7, 3], [9, 4], [9, 6], [3, 7]]
function sort_array(array) {
var results = [];
var tmp = [];
for(var i = 0; i < array.length; i++){
tmp.push(array[i]);
if(i== array.length -1 || array[i][1] != (array[i+1][1]-1)){
results.push(tmp);
tmp = [];
}
}
return results;
}
console.log(sort_array(my_array));
我在学校的任务是创建一个程序,以升序排列数组的值。它几乎就在那里,但每当我输入“44 55 66 22 33 11 77 99 88 66”或它输出的任何数字 -858993460,11,22,33,44,55,66,66,77,88,或开头为负数 第一个数字到底怎么了?我是不是缺了什么? 我对C++很陌生,我不太明白这里的问题。如果有什么建议我可以用请告诉他们。 }
假设我有两个NumPy数组 我希望根据中的值,将数组有效地拆分为子数组。 我想要的输出是 假设以零开始并按升序排序,那么最有效的方法是什么? 注意:这个问题是这个问题的排序版本:根据另一个数组的值(未排序,而是分组)将NumPy数组拆分为子数组
有人能提供帮助,如何检查排序降序数组以及?干杯!
我有一个对象数组。每个对象都有一个键“username”。 有没有一种快速的方法可以将这个对象数组按升序排序? 谢谢
问题内容: 假设我有一个如下所示的Javascript数组: 什么方法适合将数组分块(拆分)为更小的数组,最多可以有10个元素? 问题答案: 该array.slice方法可以从一开始,中间,或自己需要的任何目的数组的结束提取切片,在不改变原来的数组。
我有一个类型的Java,我希望将其序列化为升序排序的JSON数组。 如果没有,我正在考虑为此目的为集合编写一个自定义序列化器--有没有更好的方法可以有人建议呢? 最终,目标是将唯一整数数组反序列化到“请求”POJO中的某种容器中。然后处理请求并将该输入字段传递到“响应”对象中的相应输出字段(未更改)。 我希望将数据以的形式存储在POJO中,以使所有用户满意(如果您试图将其存储为的子类型,那么POJ