寻找数组中最大值和最小值

解法一:

扫描一次数组找出最大值;

再扫描一次数组找出最小值。

代码(略)

比较次数2N-2

 

解法二:

将数组中相邻的两个数分在一组, 每次比较两个相邻的数,将较大值交换至这两个数的左边,较小值放于右边。

对大者组扫描一次找出最大值,对小者组扫描一次找出最小值。

代码(略)

比较1.5N-2次,但需要改变数组结构

 

解法三:

每次比较相邻两个数,较大者与MAX比较,较小者与MIN比较,找出最大值和最小值。需比较1.5/N-2次。

解法四:

分治法,算出前N/2个数的MAX和MIN,再算出后N/2个数的MAX和MIN。需比较1.5/N-2次。

posted on 2013-09-24 17:32  banana88  阅读(199)  评论(0)    收藏  举报

导航