当前位置: 移动技术网 > IT编程>开发语言>Java > java数组的排序和查找算法

java数组的排序和查找算法

2020年08月10日  | 移动技术网IT编程  | 我要评论
数组高级:排序:冒泡排序:相邻元素两两比较,大的往后放,第一次完毕,最大值出现在了最大索引处;例:for(int i=0;i<arr.length-1;i++){for(int j=0;i<arr.length-1-i;j++){if(arr[j]>arr[j+1]){int temp=arr[i];int arr[i]=arr[i+1];int arr[i+1]=temp;}}}选择排序:

数组高级:

排序:

冒泡排序:

相邻元素两两比较,大的往后放,第一次完毕,最大值出现在了最大索引处;

例:

for(int i=0;i<arr.length-1;i++){
	
	for(int j=0;i<arr.length-1-i;j++){
		
		if(arr[j]>arr[j+1]){
			
			int temp=arr[j];

			int arr[j]=arr[j+1];

			int arr[j+1]=temp;
		
		}
	
	}	

} 

选择排序:

从0索引开始,依次和后面的元素比较,小的往前放,第一次完毕,最小值出现在最小索引处;

例:

	for(int i=0;i<arr.length-1;i++){
	
	for(int j=i+1;j<arr.length;j++){
		
		if(arr[j]<arr[i]){
			
			int temp=arr[j];

			int arr[j]=arr[i];

			int arr[i]=temp;
		
		}
	
	}	

} 

查找:

普通查找;

当数组内的元素无序时使用,遍历数组并用分支语句判断即可; 

二分法查找(数组元素有序):

例子:

int[]arr={1,2,3,4,5};

int max=arr.length-1;

int min=0;

int mid=(max+mid)/2;

int value=3;

while(arr[mid]!=value){

	if(arr.[mid]>value){
	
		max=mid-1;

	}else if(arr[mid]<value){
	
		min=mid+1;

	}
	if(min>max){
	
		return -1;

	}
	
	mid=(max+mid)/2;
	
} 

Arrays类:

概述:

针对数组进行操作的工具类,提供了排序,查找的等功能; 

成员方法:

1.public static String toString(int[] a):将数组转为字符串;

2.public static void sort(int[] a):对数组进行升序排序;

3.public static int binarySearch(int[] a,int key)L使用二分法来搜索指定的值; 

Integer 类:

概述:

Integer类在对象中包装了一个基本类型的值,该类提供了多个方法,能在int类型和String类型之间相互转换,还提供了处理int类型时非常有同的其他一些常量和方法; 

成员方法:

public static String toBinaryString(int i):返回二进制无符号整数形式字符串;

public static String toHexString(int i):返回十六进制无符号整数形式字符串;

public static String toOctalString(int i):返回八进制无符号整数形式字符串;

public int intValue():将Integer类型的数据转换为int类型;

public statci  String toString(int i):将int类型的数据转换为String类型;

public static Integer valueOf(int i):将int类型的数据装箱;

public static int parseInt(String s):将String类型的数据转换为int类型; 

String和Int的类型转换;

int->String:

最优解:String.valueOf(int i);

String->Int:

最优解:Integer.parseInt(String s); 

进制转换:

十进制到其他进制;

public static String toString(int i,int radix);

其他进制到十进制:

public static int parseInt(String s,int radix); 

Character 类:

概述:

Character类在对象中包装一个基本类型char的值,此外,该类提供了几种方法,以确定字符的类别(小写字母,数字等等),并将字符从大写转换成小写(反之亦然); 

构造方法:

public Character(char value); 

本文地址:https://blog.csdn.net/FlowerLoveJava/article/details/107880605

如您对本文有疑问或者有任何想说的,请点击进行留言回复,万千网友为您解惑!

相关文章:

验证码:
移动技术网