常用类--数组高级--数组高级(排序和查找)

数组高级(排序和查找) 

程序示例

/*
          数组高级(排序和查找)

               排序
                  冒泡排序
                  相邻元素两两比较,大的往后放,第一次完毕,最大值出现在了最大索引处
                  
                  选择排序
                  从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;
                }
            }
        }
    }
}

查找排序图解

posted @ 2021-12-16 23:09  赤兔胭脂小吕布  阅读(36)  评论(0)    收藏  举报