使用指针和线性搜索在数组中查找更大和最小的数字?

时间:2015-09-04 13:12:21

标签: c++ c arrays

我有两个关于指针的问题。我试图自己解决这些问题,但我无法解决。首先是

  

使用指针查找数组中较大和较小的数字。

这是我对第一个的尝试:

#include<stdio.h>
main()
{
    int arr[]={8,9,5,23,12};
    int min;
    int i;
    int *arr_pt;
    int big;
    min = arr[];    
    for(i=0;i<=5;i++)
    {
        if(arr[i]<min)
            min = arr[i];
    }
}  

第二个是

  

使用带指针的线性搜索算法在整数数组中查找给定数字。

我不知道我应该把指针放在哪里

#include<stdio.h>
main()
{
    int i;
    int y;
    int arr[];
    int found;
    for(i=0;i<5;i++){
        if(arr[]==y)
            found=1;
        if(found==1)
            printf("%d is found",y);          
    }
}            

1 个答案:

答案 0 :(得分:3)

#include <algorithm>

auto minmax = std::minmax_element(std::begin(values), std::end(values));

std::cout << "min element " << *(minmax.first) << "\n";
std::cout << "max element " << *(minmax.second) << "\n";

<强>复杂度:

谓词的最多max(floor(3/2(N-1)),0)应用程序,其中N = std :: distance(first,last)。

C ++很漂亮;)