java数组的排序,最值
来源:互联网 发布:最新淘宝优惠券 编辑:程序博客网 时间:2024/05/19 15:19
数组格式:
1 int[] arr=new int[5];
2 int[] arr=new int[]{3,5,1,7};
int[] arr={3,5,1,7};
遍历数组(常用方式):
求和:
int [] arr={3,5,1,7};
int sum=0;
for(int i=0;i<arr.length;i++)
{
sum+=arr[i];
System.out.print(sum);
}
数组取最值:
一,
int max=arr[0];
int[] arr={1,3,5,7};
for(int i=1;i<arr.length;i++)
{
if(arr[i]>max)
max=arr[i];
}
System.out.println(max);
二。
int min=0;
int[] arr={1,3,5,7};
for(int i=1;i<arr,length;i++){
if(arr[i]<arr[min])
min=i;
}System.out.println(arr[min]);
折半查找数数中的某值(二分法):
前提是数组有序
int[] arr={1,2,3,4,5,6};
int index=getIndex(arr,2); //key为2
int min=0,max=arr.length-1,mid;
while(min<=max)
{
mid=(min+max)/2;
if(key>arr[mid])
min=mid+1
else if(key<arr[mid])
max=mid-1;
else
return mid;
}
return -1;
数组排序:
内存方式排序(最效率) Arrays.sort(arr);
选择排序:(结果打印需要遍历)
0角标和后面角标比较,符合条件就换位
int[] arr={6,2,1,3,8};
for(int i=0;i<arr.length-1;i++) //arr.length-1 因为一开始比较时就已经能定好最大值了,所以可以不比较
{
for(int j=i+1;j<arr,length;j++) //和角标1比较
{
if(arr[i]>arr[j])
{
int temp=arr[i];
arr[i]=arr[j];
arr[j]=temp;
}
}
}
冒泡排序法:
相邻的两个元素进行比较,如果符合条件就换位
第一圈最值出现在最后位
外循环负责第几次比较
for(int x=0;x<arr.length-1;x++)
{
for(int y=0;y<arr.length-x-1;y++)
{
if(arr[y]>arr[y+1])
{
int temp=arr[y];
arr[y]=arry[y+1];
arr[y+1]=temp;
}
}
}
二维数组:
int [][] a=new int[3][4];
3 :代表有3个一维数组
4:每一个数组中的元素
0 0
- java数组的排序,最值
- 数组的最值与排序
- 数组的遍历 排序 获取最值
- java基础--常用数组的一些操作方法-查找-最值-排序
- java 基础知识-数组的7种算法(排序、求和、最值、遍历...)
- JAVA基础之数组,List,MAP。排序,最值
- 冒泡排序:在随机产生的数组中查找最值,实现数组的排序
- JAVA数组的排序
- java 数组的排序
- Java数组的排序
- 数组/排序,插入,查找,平均值,最值
- 数组的最值
- day04获取数组的最值,选择排序,冒泡排序,折半查找
- Java中数组的排序
- java数组的高效排序
- java中数组的排序
- Java常用的数组排序
- JAVA中数组的排序
- jquery中attr和prop的区别
- 杂七杂八 - 浅谈ACM
- Andriod加载大图
- SD卡文件浏览器
- 物联网于变配电站监测系统中的应用
- java数组的排序,最值
- Java堆和栈的区别(String类)
- Unity64 AStarPath 寻路失效 Bug解决 IOS64 IL2CPP - Bad date/time format in the zip file
- Head First Python Notes - Chapter 5
- java环境变量配置
- 黑马程序员----异常、抽象和接口
- Objective-C中的static用法
- nodejs(数据查询功能5)
- 生成验证码代码