小弟不才,初学者吧,写了个不伦不类的小程序,欢迎来拍砖指点一二。
public class getM{
public static void main(String[] args){
int[] data={2,3,4,7,22,88,11,55,22,6,13};
int max=0,min=0;
double avg=0.0;
getM getmm=new getM();
getmm.getMaxMinAvg(data,0,max,min,avg);
}
private void getMaxMinAvg(int[] data,int i,int MAX,int MIN,double AVG){
if(i==0){//the first data of data
MAX=MIN=data[0];
AVG=data[0]*1.0;//int to be double
}
else if(i<data.length){//not outofboundindex
if(MAX < data[i])MAX=data[i];//get MAX
if(MIN >= data[i])MIN=data[i];//get MIN
AVG=(AVG+data[i])*1.0;// get AVG
if(i==(data.length-1)){// to print the results when caculate the last data
System.out.println("最大数:"+MAX);
System.out.println("最小数:"+MIN);
System.out.println("平均数:"+AVG/data.length);
}
}else{
return;
}
getMaxMinAvg(data,i+1,MAX,MIN,AVG);
}
}
分享到:
相关推荐
1. 分数数列的证明题:这个问题考察了数学归纳法和不等式的应用,主要目的是证明一个数列的平均值是否在最大值和最小值之间。解决这类问题需要对分数的性质有深入理解,同时运用正确的数学工具进行证明。 2. 三角形...
### 百度2010年商务搜索部C/C++笔试题解析 #### 一、选择、填空题解析 1. **表达式的值** - **题目**: 设`inta=10,b=11,c=12;`,表达式`(a+b)的值是:() - **选项**: A)2 B)0 C)-2 D)1 - **解析**: `a+b...
- 计算最大值、最小值、总和和平均值 ### 5. 查找最长单词 - **知识点**: - 字符串处理 - 分割字符串 - 动态数组或列表 - **技术要点**: - 使用空格作为分隔符分割字符串 - 计算每个单词的长度 - 保存最长...
4. **求数组最大最小元**:这是查找数组中最大值和最小值的问题,可以使用线性扫描法,遍历一次数组即可找到最大值和最小值,时间复杂度为O(n)。 5. **Kruskal最小生成树**:Kruskal算法用于构建加权无环图的最小...
1. **快速排序**:基于分治策略,选择一个基准值,将数组分为小于基准值和大于基准值的两部分,递归排序这两部分。快速排序平均时间复杂度为 O(n log n),最坏情况下为 O(n²)。 2. **归并排序**:同样基于分治策略...
题目可能会要求编写特定功能的函数,例如计算数组的平均值、查找最大值或最小值等。 3. **指针**:C语言中的指针是其强大之处,它允许直接操作内存。题目可能会涉及到动态内存分配、指针运算、指针作为函数参数等。...
最后,`max_global` 即为最大子数组和。 4. **二元树中找出和为某一值的所有路径** 使用深度优先搜索(DFS)策略来解决这个问题。对于每个节点,计算从根节点到该节点的路径和。如果路径和加上当前节点的值等于...
1. **工作时间分配**:这是一道简单的算术题,涉及到对平均值和最小值的理解,以及减法运算。通过计算所有复印机的工作时间总和,然后减去最低工作时间,可以得出单台机器的最大工作时间。 2. **体积计算**:这道题...
- **概念**:通过比较相邻元素的大小来交换位置,每一轮循环都能将当前未排序部分的最大值(或最小值)放到正确的位置。 - **时间复杂度**:平均和最坏情况下都是 \(O(n^2)\),最好情况下(已排序)的时间复杂度为 \...
- 计算和、平均值、计数、阶乘、判断素数、求最大值和最小值、排序(冒泡排序、快速排序、选择排序等)、查找(顺序查找、二分查找等)、递归、链表操作、输出特殊图形、迭代法计算近似值(如牛顿法求根)等,这些...