面试题-算法题
希望大佬提供一些思路和见解 目前个人理解能力不足
$person1_risks = [
['risk' => 60.6, 'name' => 'disease1'],
['risk' => 30.7, 'name' => 'disease2'],
['risk' => 40.9, 'name' => 'disease3'],
['risk' => 60, 'name' => 'disease4'],
['risk' => 30, 'name' => 'disease5'],
['risk' => 40, 'name' => 'disease6'],
];
需求
- 风险大于等于50为偏高,小于50为低风险。风险值是1到99之间的浮点数。
- 输入参数为6个人,每个人都有类似上述6个疾病的风险,每个人风险值分布不均。
- 实现一个排序函数找出优先级最高的两个疾病和相应疾病的平均风险。
排序规则
- 风险偏高人数最多的疾病优先最高
- 低风险人数最多的疾病优先次之
- 如果某个疾病人数一样多,风险偏高的优先于低风险
- 如果某个疾病风险偏高的人数一样多,风险平均值高的优先于平均风险低的
- 如果某个疾病低风险的人数一样多,风险平均值低的优先于平均风险高的
推荐文章: