java的数组查找算法_java数组的排序和查找算法

数组高级:

排序:

冒泡排序:

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

例:

for(int i=0;i

for(int j=0;i

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

for(int j=i+1;j

if(arr[j]

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]

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

希望与广大网友互动??

点此进行留言吧!

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值