找到4个整数的最大值或最小值的最快方法?

Dir*_*ere -1 c sorting

我有四个参数,每个都是一个整数,我想找到最小的参数.什么是最快捷和/或最简单的方法?我可以做一个泡泡排序,但它似乎有点矫枉过正.

vis*_*071 10

int min(int a, int b){
    return a<b?a:b;
}
Run Code Online (Sandbox Code Playgroud)

呼叫:

min(min(a,b),min(c,d))
Run Code Online (Sandbox Code Playgroud)


dbu*_*ush 6

如果您只查找最大和/或最小值,则遍历完整列表,跟踪到目前为止您看到的最小值和最大值.无需搜索.

例如:

void print_min_max(int list[], int len)
{
    int max = INT_MIN, min = INT_MAX;
    int i;

    for (i=0; i<len; i++) {
        if (list[i] < min) min = list[i];
        if (list[i] > max) max = list[i];
    }
    printf("min=%d, max=%d\n", min, max);
}
Run Code Online (Sandbox Code Playgroud)