前端学习-刷题总结-leetcode88题的思考之splice()和sort()
程序员文章站
2022-04-26 14:44:00
...
splice
1.splice会影响原数组,但返回的值是切割得到的值,而原数组是切割后剩下的值
const arr=[1,2,3,0,0,0]
console.log(arr.splice(0,3))//[1,2,3]
console.log(arr)//[0,0,0]
2.leetcode88题可解答为:
nums1.splice(m,n,…nums2)
利用splice的替换,以及ES6扩展运算符
sort
语法:array.sort(fun);参数fun可选。规定排序顺序。必须是函数。
注:如果调用该方法时没有使用参数,将按字母顺序对数组中的元素进行排序,说得更精确点,是按照字符编码的顺序进行排序。
如果想按照其他规则进行排序,就需要提供比较函数,该函数要比较两个值,然后返回一个用于说明这两个值的相对顺序的数字。比较函数应该具有两个参数 a 和 b,其返回值如下:
若 a 小于 b,在排序后的数组中 a 应该出现在 b 之前,则返回一个小于 0 的值。
若 a 等于b,则返回 0。
若 a 大于 b,则返回一个大于 0 的值。
简单点就是:比较函数两个参数a和b,返回a-b 升序,返回b-a 降序
//注:原数组发生改变
————————————————
原文链接:https://blog.csdn.net/m0_37885651/article/details/80016718
小记
sortSimple((a,b)=>{
return a-b
})
//表示的是判断a与b的关系,上面代码是下面代码的简写
sort((a,b)=>{
if(a>b){
return 1;
}
if(a<b){
return -1;
}
return 0;
})
//若a>b,返回true,则需要换位置,代表此时排序算法是升序
上述见解详细解释可见:https://blog.csdn.net/weimob258616/article/details/89737057
上一篇: 多年未见的同学加我好友
下一篇: 元素总是居中且高度为宽度一半