【剑指offer】2.4.1查找和排序——面试题8:旋转数组的最小数字
2015-12-26 13:40
525 查看
查找:顺序查找、二分查找、哈希表查找和二叉排序树查找。
哈希表主要优点是利用它可在o(1)时间查找某一元素,但缺点是需要额外空间实现哈希表。
与二叉排序树查找对应的数据结构是二叉搜索树。
排序:插入排序、冒泡排序、归并排序、快速排序等算法。
面试题8:旋转数组的最小数字
哈希表主要优点是利用它可在o(1)时间查找某一元素,但缺点是需要额外空间实现哈希表。
与二叉排序树查找对应的数据结构是二叉搜索树。
排序:插入排序、冒泡排序、归并排序、快速排序等算法。
面试题8:旋转数组的最小数字
//题目描述 //把一个数组最开始的若干个元素搬到数组的末尾,我们称之为数组的旋 //转,输入一个非递减序列的一个旋转,输出旋转数组的最小元素。例如 //数组{3,4,5,1,2}为{1,2,3,4,5}的一个旋转,该数组的最小值为1. #include<vector> #include<iostream> using namespace std; class Solution{ public: int minNumberInRotateArray(vector<int>rotateArray){ if(rotateArray.size()==0)return 0; for(int i=0;i<rotateArray.size()-1;i++){ if(rotateArray[i]>rotateArray[i+1])return rotateArray[i+1]; } return rotateArray[0]; } }; //int main(){ // vector<int>array=vector<int>(); // array.push_back(1); // array.push_back(2); // array.push_back(3); // array.push_back(4); // array.push_back(5); // Solution test=Solution(); // cout<<test.minNumberInRotateArray(array); // system("pause"); // return 0; //}
相关文章推荐