C++ 元素是最小的元素 对于(int i=1;in; 对于(int i=0;i>arr[i]; 如果(i==0) { 最小_元素=arr[i];//最小_元素=arr[0]; } 否则如果(ARR[i]为什么你考虑最小迭代),它仅仅是8个元素,即使你的算法在所有

C++ 元素是最小的元素 对于(int i=1;in; 对于(int i=0;i>arr[i]; 如果(i==0) { 最小_元素=arr[i];//最小_元素=arr[0]; } 否则如果(ARR[i]为什么你考虑最小迭代),它仅仅是8个元素,即使你的算法在所有,c++,arrays,C++,Arrays,元素是最小的元素 对于(int i=1;in; 对于(int i=0;i>arr[i]; 如果(i==0) { 最小_元素=arr[i];//最小_元素=arr[0]; } 否则如果(ARR[i]为什么你考虑最小迭代),它仅仅是8个元素,即使你的算法在所有的情况下都是8次迭代O(n),那么这里需要最好的算法来解决这种情况,元素的数量可以增加……如果它是一个随机数组,你不能比O(n)好得多。@迈克:大概穆罕默德现在不在采访中。8-)如果你可以通过谷歌搜索很容易找到答案,它真的应该在StackOve

元素是最小的元素 对于(int i=1;in; 对于(int i=0;i>arr[i]; 如果(i==0) { 最小_元素=arr[i];//最小_元素=arr[0]; }

否则如果(ARR[i]为什么你考虑最小迭代),它仅仅是8个元素,即使你的算法在所有的情况下都是8次迭代O(n),那么这里需要最好的算法来解决这种情况,元素的数量可以增加……如果它是一个随机数组,你不能比O(n)好得多。@迈克:大概穆罕默德现在不在采访中。8-)如果你可以通过谷歌搜索很容易找到答案,它真的应该在StackOverflow上吗?好的,查找元素将是O(1),但保持数组排序将花费更多(取决于你的排序算法)如果您需要快速了解最小值,并且不总是添加新元素,那么这可能是可以的。请注意,如果数组可能为空,“small=element[0]”是不安全的。True。查找最小值(maxmimum等)的标准约定是什么对于空容器?我不认为你能返回除了max值之外的任何有用的值,max值对于用户定义的类型可能不存在。对于空容器,你应该返回null。我会用数组的第一个元素初始化最小值,然后从1迭代到数组长度。顺便说一句,你忘记了int I=0中的I;@Ben:记住反求在数组为空的情况下。8-)为什么要调用所有这些算法而不是问题中要求的std::min_元素?只是因为我不知道它。但它总是O(N)如果您对数据了解得更多,或者您的数据没有存储在未排序的向量中,那么您可以使用其他算法获得更高的性能。我认为上述文章表明,最佳算法的问题始终取决于数据和容器。您不必自己创建堆。使用定义排序顺序的std::set。我是在stl中是否有heapify(或类似)函数…依靠std::set的排序顺序是否明智?您不必依赖它。只需提供自己的一个:-)是的,集合已排序。但是,您可以使用堆函数,甚至不需要使用昂贵的集合。只需使用一个数组包装器,在插入时自动更新<代码> min <代码>变量。“这取决于语言。这里是一个很好的java解决方案”为什么在C++问题中甚至把这个问题与JVM信息一起发布?但是,如果数组很大,由于缓存内存效应,按正向顺序遍历数组可能会导致更快的内存访问。如果您添加一些注释,解释为什么这是查找最小值的有效方法,您的答案将更有意义。对于此问题,还有许多其他等效的答案。你的答案并没有增加多少。我认为,找到最小的数字是最好的方法。
int smallest = INT_MAX;
for (int i = 0; i < array_length; i++) {
    if (array[i] < smallest) {
        smallest = array[i];
    }
}
small = <biggest value> // such as std::numerical_limits<int>::max
for each element in array:
    if (element < small)
        small = element
small = element[0]
for each element in array, starting from 1 (not 0):
    if (element < small)
        small = element
std::find
std::find_if
std::count
std::find
std::binary_search
std::equal_range
std::lower_bound
std::upper_bound
std::min_element
std::max_element
class MyArray
{
public:
    MyArray() : m_minValue(INT_MAX) {}

    void add(int newValue)
    {
        if (newValue < m_minValue) m_minValue = newValue;
        list.push_back( newValue );
    }

    int min()
    {
        return m_minValue;
    }

private:
    int m_minValue;
    std::list m_list;
}
int smallest =  Integer.MAX_VALUE;
int array[]; // Assume it is filled.
int array_length = array.length;
for (int i = array_length - 1; i >= 0; i--) {
    if (array[i] < smallest) {
        smallest = array[i];
    }
}
//find the min in an array list of #s
$array = array(45,545,134,6735,545,23,434);

$smallest = $array[0];
for($i=1; $i<count($array); $i++){
    if($array[$i] < $smallest){
        echo $array[$i];
    }
}
                //smalest number in the array//
    double small = x[0];
    for(t=0;t<x[t];t++)
    {
         if(x[t]<small)
             {
                small=x[t];
            }
    }
    printf("\nThe smallest number is  %0.2lf  \n",small);
r0 := min(a0, b0)
r1 := min(a1, b1)
r2 := min(a2, b2)
r3 := min(a3, b3)
__m64 _mm_min_pu8(__m64 a , __m64 b );
int small=a[0];
for (int x: a.length)
{
    if(a[x]<small)
        small=a[x];
}
  #include<bits/stdc++.h>
  using namespace std;

  int main()
  {
     int num;
     cin>>num;
     int arr[10];

     for(int i=0; i<num; i++)
     {
       cin>>arr[i];
     }


    cout<<*min_element(arr,arr+num)<<endl;

    return 0;
  }
int arr[] = {5,7,9,0,-3,2,3,4,56,-7};
int smallest_element=arr[0] //let, first element is the smallest one

for(int i =1;i<sizeOfArray;i++)  
{
    if(arr[i]<smallest_element)
    {
     smallest_element=arr[i];
    }
}
int smallest_element;
int arr[100],n;
cin>>n;
for(int i = 0;i<n;i++)
{
cin>>arr[i];
if(i==0)
{
    smallest_element=arr[i]; //smallest_element=arr[0];
}
else if(arr[i]<smallest_element)
{
smallest_element = arr[i];
}
}
#inclue<algorithm>
int smallest_element = *min_element(arr,arr+n); //here n is the size of array
int arr[] = {3,2,1,-1,-2,-3};
cout<<*min_element(arr,arr+3); //this will print 1,smallest element of first three element
cout<<*min_element(arr+2,arr+5); // -2, smallest element between third and fifth element (inclusive)