n个数组中的分区数

时间:2015-12-04 09:37:30

标签: javascript math

让我们说我们有这些数字的数组:

var numbers=[10,25,640,9800,51000,54234,53433,543,1000];

我想根据它们在n区(数组)中的值来分割这些数字。最大n为5。

示例:

Result for 5-area would be: [10,25],[543,640],[1000],[9800],[51000,54234,53433]
Result for 4-area in this case would be: [10,25],[543,640,1000],[9800],[51000,54234,53433]

*编辑:

如果我们有值900而不是640结果为5 - 区域将是:

[10,25],[543],[900,1000],[9800],[51000,54234,53433]

因为900更接近1000.在前面的例子中,640更接近543。

-

我该怎么做?

请帮帮我。

1 个答案:

答案 0 :(得分:1)

关于'n-areas'的问题和描述,目前还不清楚算法究竟是什么。

但是,为了对数字进行排序,您应该看看数组排序方法。

如果结果是否定的,sort函数会将第一个值排序为较低的值并将其向下移动到数组中。例如。 10是集合中的最低值,因此它将被移动到索引0.但是,在排序之后,在上面的数组中的数字640之后,它将不是9800,而是1000,然后将是9800。这个

[10,25,543,640,1000,9800,51000,53433,54234]

而不是原始数组

[10,25,640,9800,51000,54234,53433,543,1000]

我在下面添加了一个jsbin来说明Array.sort的工作原理。

http://jsbin.com/zaxopucuye/edit?html,js,console