Javascript 将排序转换为唯一排序
我正在尝试将此排序转换为唯一的排序:Javascript 将排序转换为唯一排序,javascript,algorithm,sorting,caching,Javascript,Algorithm,Sorting,Caching,我正在尝试将此排序转换为唯一的排序: const sort=arr=>arr.sort((a,b)=>a-b) 我试过这个: const uniqSort = arr => { const breadcrumbs = {}; for(let i =0; i<arr.length; i++){ if(breadcrumbs[arr[i]]){ arr.splice(i,1) } else {
const sort=arr=>arr.sort((a,b)=>a-b)代码>
我试过这个:
const uniqSort = arr => {
const breadcrumbs = {};
for(let i =0; i<arr.length; i++){
if(breadcrumbs[arr[i]]){
arr.splice(i,1)
} else {
breadcrumbs[arr[i]] = true;
}
}
return arr.sort((a, b) => a - b);
};
const uniqSort=arr=>{
常量面包屑={};
for(设i=0;i a-b);
};
由于某种原因,它不能正常工作,有人知道为什么吗
当我输入uniqSort([4,2,2,3,2,2,2])代码>
输出是[2,2,3,4]
,而不是在迭代时修改相同的数组
const uniqSort = arr => {
const breadcrumbs = {};
const newArray = [];
for (let i = 0; i < arr.length; i++) {
if (!breadcrumbs[arr[i]]) {
breadcrumbs[arr[i]] = true;
newArray.push(arr[i]);
}
}
return newArray.sort((a, b) => a - b);
};
什么是唯一排序?您好,请添加一个示例,说明唯一排序将对您尝试排序的对象执行什么操作,以及所需的结果。从数组中删除任何重复项,然后对其进行排序示例:`` uniqSort([4,2,2,3,2,2,2]);//=>[2,3,4]uniqSort([1,5,2,1]);//[1,2,5]``从不拼接
和阵列,同时从左到右循环。将for
循环的顺序颠倒:for(让i=arr.length-1;0完美答案!您可以通过删除block{}
和return
语句,并使用箭头函数的隐式返回:const uniqSort=arr=>Array.from(…).sort(…)修改同一个数组有什么问题?我知道集合解决方案,最近我开始深入研究算法,所以我尝试不同的方法。你可以在这里找到更多。
const uniqSort = arr => {
return Array.from(new Set(arr)).sort((a, b) => a - b);
};