【第21期】观点:人工智能到底用 GPU?还是用 FPGA?

LintCode-剑指Offer-(28)寻找旋转排序数组中的最小值

原创 2015年11月21日 01:24:18
class Solution {
public:
/**
* @param matrix, a list of lists of integers
* @param target, an integer
* @return a boolean, indicate whether matrix contains target
*/
bool searchMatrix(vector<vector<int>> &matrix, int target) {
    if ( matrix.size() == 0 )return false;
    int tmp = matrix.size()*( matrix[0] ).size();
    int i = 0;
    int j = tmp - 1;
    int mid = j / 2;
    if ( matrix.size() != 0 && ( matrix[0] ).size() == 0 )return false;
    int currentpoint = matrix[mid / ( matrix[0].size() )][mid % ( matrix[0] ).size()];
    while ( i <= j ){
        if ( currentpoint<target ){
            i = mid + 1;
            mid = ( i + j ) / 2;
            currentpoint = matrix[mid / ( matrix[0].size() )][mid % ( matrix[0] ).size()];
        }
        else if ( currentpoint>target ){
            j = mid - 1;
            mid = ( i + j ) / 2;
            currentpoint = matrix[mid / ( matrix[0].size() )][mid % ( matrix[0] ).size()];
        }
        else return true;
    }
    return false;
    }
};
版权声明:本文为博主原创文章,未经博主允许不得转载。 举报

相关文章推荐

剑指offer--快速排序递归实现,年龄排序O(N)实现,旋转数组最小值查找

快速排序算法的递归实现: void swap(int *a,int *b) { int c; c=*a; *a=*b; *b=c; } int Partition(i...

数组排序,并求出最小值和最大值

数组排序,并求出最小值和最大值   //数组排序,并求出最小值和最大值 import java.io.*; public class array2{ //主程序 public static void main(String[] args) { //定义数组长度 int len=0; String s;

LintCode-剑指Offer-(160)寻找旋转排序数组中的最小值Ⅱ

class Solution { public: /** * @param num: the rotated sorted array * @return: the min...

剑指Offer之旋转数组的最小数字

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

【剑指offer】寻找旋转排序数组中的最小值

描述: 假设一个旋转排序的数组其起始位置是未知的(比如0 1 2 4 5 6 7 可能变成是4 5 6 7 0 1 2)。 你需要找到其中最小的元素。 你可以假设数组中不存在重复的元...

旋转数组的最小值

题目描述: 把一个数组最开始的若干个元素搬到数组的末尾,我们称之为数组的旋转。输入一个递增排序的数组的一个旋转,输出旋转数组的最小元素。例如数组{3,4,5,1,2}为{1,2,3,4,5}的一个旋转,该数组的最小值为1。 输入: 输入可能包含多个测试样例,对于每个测试案例, 输入的第一行

lintcode寻找旋转排序数组中的最小值/循环有序数组的查找

问题描述循环有序数组假设一个旋转排序的数组其起始位置是未知的(比如0 1 2 4 5 6 7 可能变成是4 5 6 7 0 1 2)。你需要找到其中最小的元素。你可以假设数组中不存在重复的元素。笔记还...

剑指Offer之旋转数组的最小数字

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

lintcode--寻找旋转排序数组中的最小值

假设一个旋转排序的数组其起始位置是未知的(比如0 1 2 4 5 6 7 可能变成是4 5 6 7 0 1 2)。 你需要找到其中最小的元素。 你可以假设数组中不存在重复的元素。  注意...

[剑指Offer]10.旋转数组的最小数字

题目1386:旋转数组的最小数字 题目描述: 把一个数组最开始的若干个元素搬到数组的末尾,我们称之为数组的旋转。输入一个递增排序的数组的一个旋转,输出旋转数组的最小元素。例如数组{3,4,5,1,2}为{1,2,3,4,5}的一个旋转,该数组的最小值为1。 <dl
收藏助手
不良信息举报
您举报文章:深度学习:神经网络中的前向传播和反向传播算法推导
举报原因:
原因补充:

(最多只允许输入30个字)