欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

java数组的排序和查找算法

程序员文章站 2022-07-10 18:32:35
数组高级:排序:冒泡排序:相邻元素两两比较,大的往后放,第一次完毕,最大值出现在了最大索引处;例:for(int i=0;iarr[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

相关标签: java 数组