生活随笔
收集整理的這篇文章主要介紹了
分治法求数组中的最大最小元素
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
?
#include<iostream> ?using?namespace?std; ??void?maxmin(int?i,int?j,int?A[],int&?fmax,int&?fmin); ?int?main(){ ?????int?A[]={2,5,2,4,7,3,10,9,3}; ?????int?max,min; ?????maxmin(0,8,A,max,min); ?????cout<<max<<"?"<<min<<endl; ?????int?i; ?????cin>>i; ?????return?0; ?} ???void?maxmin(int?i,int?j,int?A[],int&?fmax,int&?fmin){ ???????????????int?max1,max2,min1,min2; ?????int?mid=(i+j)/2; ?????if(i==j)?{fmax=A[i];fmin=A[i];} ?????else?if(i==j-1){ ?????????if(A[i]<=A[j]){fmin=A[i];fmax=A[j];?} ?????????else?{fmin=A[i];fmax=A[j];} ?????} ?????else?{ ?????????maxmin(mid+1,j,A,max1,min1); ?????????maxmin(i,mid,A,max2,min2); ?????????fmax=max(max1,max2); ?????????fmin=min(min1,min2); ?????} ???}? ?
轉載于:https://blog.51cto.com/aaronz/371385
總結
以上是生活随笔為你收集整理的分治法求数组中的最大最小元素的全部內容,希望文章能夠幫你解決所遇到的問題。
如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。