数组高级(排序和查找)
程序示例
/*
数组高级(排序和查找)
排序
冒泡排序
相邻元素两两比较,大的往后放,第一次完毕,最大值出现在了最大索引处
选择排序
从0索引开始,依次和后面元素比较,小的往前放,第一次完毕,最小值出现在了最小索引处
查找
基本查找 数组元素无序
二分查找 数组元素有序
把字符串中的字符进行排序。
举例:"dacgebf"
结果:"abcdefg"
符合常识字典字母顺序,在java中又称之为自然排序
分析:
1、将被排序的字符串转成字符数组
2、将字符数组进行排序
3、将数组转成字符串
4、输出
*/
public class StringBufferDemo12 {
public static void main(String[] args) {
//定义一个字符串
String s = "dacgebf";
System.out.println("排序之前的字符串为:" + s);
//将被排序的字符串转成字符数组
char[] chars = s.toCharArray();
//将字符数组进行排序
//举例冒泡排序
bubblingSort(chars);
//将数组转换从字符串
String s1 = String.valueOf(chars);
System.out.println("排序后的字符串为:" + s1);
}
private static void bubblingSort(char[] chars) {
for (int x = 0; x < chars.length - 1; x++) {
for (int y = 0; y < chars.length - 1 - x; y++) {
if (chars[y] > chars[y + 1]) {
char temp = chars[y];
chars[y] = chars[y + 1];
chars[y + 1] = temp;
}
}
}
}
}
查找排序图解
![]()
![]()