版权声明:本文为博主原创文章,转载请注明出处 https://blog.csdn.net/m0_37750720/article/details/82532244
描述
给出一个有序数列随机旋转之后的数列,如原有序数列为:[0,1,2,4,5,6,7] ,旋转之后为[4,5,6,7,0,1,2]。 假定数列中无重复元素,且数列长度为奇数。 求出旋转数列的中间值。如数列[4,5,6,7,0,1,2]的中间值为4。
输入样例
4,5,6,7,0,1,2
输出样例
4
我的代码
private static String solution(String line) {
// 在此处理单行数据
String[] array = line.split(",");
int len = array.length;
if (len == 1)
return array[0];
int head = Integer.parseInt(array[0]);
int i = 1;
for (; i < len; i ++) {
if (Integer.parseInt(array[i]) < head)
break;
}
i = ((len - 1) / 2 + i) % len;
// 返回处理后的结果
return array[i];
}