📅  最后修改于: 2023-12-03 15:34:46.401000             🧑  作者: Mango
这是一道有趣的编程题目,挑战程序员的智慧和技能。题目的名称是乱码,但实际上代表了一个任务:从一组无序的数据中找到最大值和最小值。
你需要写一个函数,名为 ruschnittSchtrgöesGesuvcht
,它接收一个含有整数的数组作为参数,并返回一个包含最大值和最小值的对象。其中,最大值用字符串 max
表示,最小值用字符串 min
表示。如果数组为空,则返回 null
。
函数的实现方式不限,但它必须满足以下要求:
以下是该函数的几个例子。
输入:[10, 5, -10, 100, 20]
,输出:{max: 100, min: -10}
输入:[5, 5, 5, 5, 5]
,输出:{max: 5, min: 5}
输入:[]
,输出:null
解题的思路可以使用数组的遍历和比较,从而找到最大值和最小值。我们可以设置两个变量 min
和 max
,初始值分别为数组中的两个元素,然后遍历整个数组,依次比较每个元素和 min
和 max
的值,最后得出最小值和最大值。
以下是该函数的实现代码:
function ruschnittSchtrgöesGesuvcht(arr) {
if (!arr.length) {
return null;
}
let min = arr[0], max = arr[0];
for (let i = 1; i < arr.length; i++) {
const val = arr[i];
min = Math.min(min, val);
max = Math.max(max, val);
}
return { min, max };
}
我选择用 JavaScript 实现了该函数,你可以根据实际情况,选择自己熟悉的编程语言来实现它。