面试题8:旋转数组的最小数字

题目:把一个数组最开始的若干个元素搬到数组的末尾,我们称之为数组的旋转。输入一个递增排序的数组的一个旋转,输出旋转数组的最小元素。例如数组{3,4,5,1,2}为{1,2,3,4,5}的一个旋转,该数组的最小值为1.

注:需要用到旋转数组的特性,用二分查找法的思路来寻找这个最小的元素


面试题8:旋转数组的最小数字_第1张图片
自己写的

一个特例:如果把排序数组的前面的0个元素搬到最后面,即排序数组本身,这仍然是数组的一个旋转

需要添加三个数字相等(num[start], num[end],num[mid])


面试题8:旋转数组的最小数字_第2张图片
三个数字相等的情况

你可能感兴趣的:(面试题8:旋转数组的最小数字)