用分治法设计一个算法,在数组A中寻找最大元素和最小元素 Java代码
算法分析与设计作业——
用分治法设计一个算法,在数组A中寻找最大元素和最小元素
public class b1113 {static int min=Integer.MAX_VALUE;static int max=Integer.MIN_VALUE;public static void main(String[] args) {int[] a={88,183,522,374,5,33224,5,12,7,847,96};mm(a,0,a.length-1);System.out.println("min:"+min+",max:"+max);}public static void mm(int[] a,int i,int j){if(i>j)return;//只剩1个数if(i==j){min=Math.min(min,a[i]);max=Math.max(max,a[i]);return;}//只剩2个数if(i==j-1){max=Math.max(max,Math.max(a[i],a[j]));min=Math.min(min,Math.min(a[i],a[j]));return;}//大于2个数else{int mid=(i+j)/2;mm(a,i,mid);mm(a,mid+1,j);}}
}
用分治法设计一个算法,在数组A中寻找最大元素和最小元素 Java代码相关推荐
- 4.6设计一个算法判断图G中从顶点u到v是否存在简单路径
1. 题目描述 假设图G采用邻接表存储,设计一个算法判断图G中从顶点u到v是否存在简单路径 所谓简单路径是指路径上的顶点不重复.可采用深度优先遍历的方法 #include <bits/stdc+ ...
- 有一个顺序表L,其元素为整形数据,设计一个算法,将L中的所有小于表头元素的整数放在前半部分,大于表头元素的整数放在后半部分
题目 有一个顺序表L,其元素为整形数据,设计一个算法,将L中的所有小于表头元素的整数放在前半部分,大于表头元素的整数放在后半部分 解答(天勤) /*************************** ...
- 铁路车厢调度问题。图 1 是一个铁道调车场的示意图,两侧铁道均为单向行驶 道,中间有一段用于调度的“栈道”,调车场的入口处有 n 节硬座和软座车厢(分 别用 H 和 S 表示),设计一个算法,把所有的
铁路车厢调度问题.图 1 是一个铁道调车场的示意图,两侧铁道均为单向行驶 道,中间有一段用于调度的"栈道",调车场的入口处有 n 节硬座和软座车厢(分 别用 H 和 S 表示),设 ...
- 分治法在排序算法中的应用(JAVA)--快速排序(Lomuto划分、Hoare划分、随机化快排)
分治法在排序算法中的应用--快速排序 时间复杂度:平均O(nlogn),最坏O(n^2) 如果说归并排序是按照元素在数组中的位置划分的话,那么快速排序就是按照元素的值进行划分.划分方法由两种,本节将主 ...
- 回溯法——设计一个算法在1、2、3... 9(顺序不能变)数字之间插入+ 或 - 或什么都不插入,使得计算结果总是100的程序,并输出所有的可能性和全排列
回溯法 题目描述: 设计一个算法在1.2.3- 9(顺序不能变)数字之间插入+ 或 - 或什么都不插入,使得计算结果总是100的程序,并输出所有的可能性.例如1+2+34-5+67-8+9=100 分 ...
- 数据结构:假设有一个带头结点的单链表L,每个结点值由单个数字、小写字母和大写字母构成。设计一个算法将其拆分成3个带头结点的单链表L1、L2和L3,L1包含L中的所有数字结点,L2包含L中的所有小写字母
假设有一个带头结点的单链表L,每个结点值由单个数字.小写字母和大写字母构成.设计一个算法将其拆分成3个带头结点的单链表L1.L2和L3,L1包含L中的所有数字结点,L2包含L中的所有小写字母结点,L3 ...
- 给定k个排好序的序列,设计一个算法确定2路合并次序,使所需的总比较次数最少。Java代码
算法分析与设计作业 一.实验目的 (1)掌握贪心算法的基本思想: (2)能使用贪心算法求解一些相关问题: 二.实验内容 1.给定k个排好序的序列s1,s2,-,sk,用2路合并算法将这k个序列合并成一 ...
- 一串首尾相连的珠子(m个),有N种颜色(N《=10),设计一个算法,取出其中一段,要求包含所有N中颜色,并使长度最短。并分析时间复杂度与空间复杂度。
一串首尾相连的珠子(m个),有N种颜色(N<=10),设计一个算法,取出其中一段,要求包含所有N中颜色,并使长度最短.并分析时间复杂度与空间复杂度. 这道题在网上著名的帖子 微软等公司数据结构+ ...
- 设计一个算法,将一般算术表达式转化为逆波兰表达式,并求逆波兰表达式的值
栈的设计与使用 实验内容 设计一个算法,将一般算术表达式转化为逆波兰表达式,并求逆波兰表达的值 解题思路 (1)一般算术表达(中缀表达),如#3×(4+2)/2-5#,#为表达式界定符,逆波兰表达式( ...
最新文章
- JavaScript---认识JavaScipt
- 无人驾驶中用到的八大坐标系
- 数理统计-5.4 三大抽样分布
- 【大会】AI能解决哪些问题?
- linux怎么才能算telnet成功_怎么表白才算成功呢
- 路由到另外一个页面_Nextjs使用解读一(项目搭建与路由系统)
- await原理 js_「速围」Node.js V14.3.0 发布支持顶级 Await 和 REPL 增强功能
- tomcat 设置xms xmx,采用startup.bat启动和采用操作系统服务启动区别
- SQL Server 2005高可用性之镜像功能
- 史上最详细的vsftpd配置文件讲解
- Cholesky 分解,QR分解
- note-Linux大棚命令百篇1 Shell基础及工具篇
- Mysql修改表中字段名称、字段类型
- 横河川仪压力变送器故障代码_横河川仪压力变送器
- 智慧街道智慧社区一体化综合管理平台Java商业源码
- Hadoop常备知识点
- [搞笑]MM买裤子 超强的
- 信息化绩效评价的内容(zt)
- 跨域MPLS Option C1
- 学生时代应如何做好程序员