千家信息网

如何找出一个整数数组中的第二大数

发表于:2024-11-12 作者:千家信息网编辑
千家信息网最后更新 2024年11月12日,这篇文章给大家介绍如何找出一个整数数组中的第二大数,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。可能以故事形式:如从第一层到第十层电梯每层停一次,如何找到第二个大的钻石 1 #i
千家信息网最后更新 2024年11月12日如何找出一个整数数组中的第二大数

这篇文章给大家介绍如何找出一个整数数组中的第二大数,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。

可能以故事形式:如从第一层到第十层电梯每层停一次,如何找到第二个大的钻石

 1 #include  2 #include  3 #define MINNUMBER -32768  4 int find_sec_max(int arr[],int size)  5 {  6     assert(arr);  7     int maxnumber=arr[0];  8     int sec_max=MINNUMBER;  9     int i=0; 10     for(i=1;imaxnumber) 13         { 14             sec_max=maxnumber; 15             maxnumber=arr[i]; 16         } 17         else 18         { 19             if(arr[i]>sec_max) 20                 sec_max=arr[i]; 21         } 22     } 23     return sec_max; 24 } 25 int main() 26 { 27     int arr[10]={3,2,4,5,6,7,8,9,9,10}; 28     printf("In arr,the second max: %d\n",find_sec_max(arr,10)); 29     return 0; 30 }

判断单链表是否带环?

 1 #include  2 struct LinkNode  3 {  4     char val;  5     LinkNode* next;  6 };    7 bool check(const LinkNode* head)  8 {  9     if(head==NULL) 10         return false; 11     LinkNode* low=head,*fast=head->next; 12     while(fast&&fast->next) 13     {    14         low=low->next; 15         fast=fast->next->next; 16         if(low==fast) 17             return true; 18     }        19     return false; 20 }

找出两个数中最大的一个:有两个int变量A和B,请不要使用if,?:和switch或其他判断语句,找出两个数中最大的一个。

方案一:

int max=((a+b)+abs(a-b))/2;

方案二:

int c=a-b;c=unsigned(c)>>(sizeof(int)*8-1);

写一个函数返回1+2+3+....+n的值(假定结果不会超过长整型变量的范围)

int sum(int n){    return ((long)1+n)*n/2;}

关于如何找出一个整数数组中的第二大数就分享到这里了,希望以上内容可以对大家有一定的帮助,可以学到更多知识。如果觉得文章不错,可以把它分享出去让更多的人看到。

0