searchusermenu
  • 发布文章
  • 消息中心
点赞
收藏
评论
分享
原创

排序方式-算法学习

2023-07-12 04:00:43
2
0

题目详情:
给定一个数组 arr 和一个函数 fn,返回一个排序后的数组 sortedArr。你可以假设 fn 只返回数字,并且这些数字决定了 sortedArr 的排序顺序。sortedArr 必须按照 fn 的输出值 升序 排序。
你可以假设对于给定的数组,fn 不会返回重复的数字。

示例:
输入:arr = [5, 4, 1, 2, 3], fn = (x) => x
输出:[1, 2, 3, 4, 5]

解题思路:
题目要求根据给定的数组 arr 和函数 fn,返回一个按照 fn 函数输出值升序排序的新数组 sortedArr。可以假设 fn 只返回数字,并且这些数字决定了 sortedArr 的排序顺序。
使用数组的 sort 方法,传入一个比较函数 (a, b) => fn(a) - fn(b)。该比较函数通过调用 fn 函数获取 a 和 b 的输出值,并按照升序排序。

最终返回排序后的新数组 sortedArr。
代码实现:
function sortByFn(arr, fn) {
    return arr.sort((a, b) => fn(a) - fn(b));
}

// 示例输入
const arr = [5, 4, 1, 2, 3];
const fn = (x) => x;

// 调用函数并输出结果
console.log(sortByFn(arr, fn));

0条评论
作者已关闭评论
t****m
98文章数
1粉丝数
t****m
98 文章 | 1 粉丝
t****m
98文章数
1粉丝数
t****m
98 文章 | 1 粉丝
原创

排序方式-算法学习

2023-07-12 04:00:43
2
0

题目详情:
给定一个数组 arr 和一个函数 fn,返回一个排序后的数组 sortedArr。你可以假设 fn 只返回数字,并且这些数字决定了 sortedArr 的排序顺序。sortedArr 必须按照 fn 的输出值 升序 排序。
你可以假设对于给定的数组,fn 不会返回重复的数字。

示例:
输入:arr = [5, 4, 1, 2, 3], fn = (x) => x
输出:[1, 2, 3, 4, 5]

解题思路:
题目要求根据给定的数组 arr 和函数 fn,返回一个按照 fn 函数输出值升序排序的新数组 sortedArr。可以假设 fn 只返回数字,并且这些数字决定了 sortedArr 的排序顺序。
使用数组的 sort 方法,传入一个比较函数 (a, b) => fn(a) - fn(b)。该比较函数通过调用 fn 函数获取 a 和 b 的输出值,并按照升序排序。

最终返回排序后的新数组 sortedArr。
代码实现:
function sortByFn(arr, fn) {
    return arr.sort((a, b) => fn(a) - fn(b));
}

// 示例输入
const arr = [5, 4, 1, 2, 3];
const fn = (x) => x;

// 调用函数并输出结果
console.log(sortByFn(arr, fn));

文章来自个人专栏
js
57 文章 | 1 订阅
0条评论
作者已关闭评论
作者已关闭评论
0
0