首页 > 学院 > 开发设计 > 正文

分治递归:求数组元素的最大值,最小值

2019-11-15 00:38:15
字体:
来源:转载
供稿:网友
分治递归:求数组元素的最大值,最小值
//分治递归,求数组元素的最大值,最小值/** * 保存产生的最大值,最小值 * @author Administrator * */public class Values {    PRivate int max;    private int min;        public Values(int max,int min){        this.max=max;        this.min=min;    }    public int getMax() {        return max;    }    public void setMax(int max) {        this.max = max;    }    public int getMin() {        return min;    }    public void setMin(int min) {        this.min = min;    }}/** * 分治递归找出数组元素中的最大数,最小数 * @author Administrator * */public class MinMax {    public void min_max(int a[],int s,int e,Values values){        Values lValues=new Values(0,0);        Values rValues=new Values(0,0);                if(e==s+1||e==s){            if(a[s]>=a[e]){                values.setMax(a[s]);                values.setMin(a[e]);            }            else{                values.setMax(a[e]);                values.setMin(a[s]);            }            return;        }                int mid=(e+s)/2;        min_max(a,mid+1,e,lValues);        min_max(a,s,mid,rValues);        values.setMax(lValues.getMax()>rValues.getMax()?lValues.getMax():rValues.getMax());        values.setMin(lValues.getMin()<rValues.getMin()?lValues.getMin():rValues.getMin());    }}/** * 分治递归找出数组元素中的最大数,最小数 * @author Administrator * */public class MinMax {    public void min_max(int a[],int s,int e,Values values){        Values lValues=new Values(0,0);        Values rValues=new Values(0,0);                if(e==s+1||e==s){            if(a[s]>=a[e]){                values.setMax(a[s]);                values.setMin(a[e]);            }            else{                values.setMax(a[e]);                values.setMin(a[s]);            }            return;        }                int mid=(e+s)/2;        min_max(a,mid+1,e,lValues);        min_max(a,s,mid,rValues);        values.setMax(lValues.getMax()>rValues.getMax()?lValues.getMax():rValues.getMax());        values.setMin(lValues.getMin()<rValues.getMin()?lValues.getMin():rValues.getMin());    }}


发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表