题目来源:大工慕课 链接
作者:Caleb Sung
题目要求
利用递归算法在一条语句内实现查找数组中的最小元素。
参考解答
查找函数 MinInArray()
利用了两重三目运算,使得查找功能巧妙地被归纳为只有一条语句:
int MinInArray (int[] array , int n) {
return n == 1 ? array[0] : array[n-1] < MinInArray(array , n-1) ? array[n-1] : MinInArray(array , n-1);
}
主函数与测试用例
public static void main(String[] args) {
Homework_ds1 minInArray = new Homework_ds1();
int[] a = {0,-5,2,5,3,-6,9};
System.out.println(minInArray.MinInArray(a,a.length));
}
运行结果
-6
符合设计要求。