浅谈javascript的合并方法
ecmascript5还增加了合并数组的2种方法:减少()和()reduceright。所有这两个都将迭代数组中的所有项。
减少():从第一个项目到结束。
ReduceRight():从数组的最后一项,数组中的第一个项目是穿越。
这两种方法都接受两个参数:在每个上调函数中(参数是:前一个值、当前值、项的索引、数组对象)
该函数返回的任何争吵将自动作为第一个参数传递给下一个项目。第一次迭代发生在数组的第二项上,
因此第一个参数是数组的第一项,第二个参数是数组的第二项。
以初始值为基础的并购。
缩减()方法可以执行数组中所有值的总和运算,例如:
复制代码代码如下所示:
var值{ 1, 2, 3,4, 5 };
VaR和= values.reduce(功能(沪指,cur,指数、阵列){
回沪指+电流;
});
警报(和);
结果是相同的,但方向相反。
var 2 = values.reduceright(功能(沪指,cur,索引数组){
回沪指+电流;
});
警报(2);
归并排序是一种基于归并运算的高效排序算法,该算法是分而治之的一种典型应用。
合并(合并)排序方法是将两个或多个有序表合并为一个新的有序表,即将有序序列划分为若干个子序列,并对每个子序列进行排序,然后将有序子序列合并为一个整序列。
归并排序是一种有效的排序算法的基础上合并操作。该算法是一个非常典型的应用分而治之。有序序列合并,得到一个完全有序的序列,使每个子序列的序列,然后进行序列之间的序列,如果两个有序表合并成一个有序的表,它被称为合并的2路。