【java随笔】一维数组最大\最小值、排序算法(冒泡排序、选择排序、插入排序、二分查找)

目录

    • 1.一维数组最大、最小值
      • tips:学会定义、调用方法
    • 2.冒泡排序
      • tips:相邻两位依次比较,每轮将最大值传递到当前轮次的最后一位。比较arr.length-1轮。
    • 3.选择排序法
      • tips:学会调试。先分析解题思路,细化思路步骤,然后写代码,如果执行结果不对,打断点、调试F7一步步看那个中间值设置有问题,最终会得到想要的结果的。
    • 4.直接插入排序法
      • tips:学会定义变量:要解决一个问题,先列出解决问题的详细步骤,然后提取出关键节点,定义变量,方便使用。
    • 5.二分查找法
      • tips:分析问题,提出问题,解决问题

1.一维数组最大、最小值

tips:学会定义、调用方法

import java.lang.reflect.Array;
import java.util.Arrays;
import java.util.Random;

public class Test3 {
   
    public static void main(String[] args) {
   
        Random random = new Random();
        int[] nums = new int[10];
        int len = nums.length;
        for (int i = 0; i < len; i++) {
   
            nums[i]=random.nextInt(100);//随机生成100内的数组
        }
        System.out.println(Arrays.toString(nums));
        System.out.println("数组的最大值:"+max(nums));
        System.out.println("数组的最小值:"+min(nums));

    }
    //求数列中最大值,学会使用方法
    public static int max(int[] nums){
   
        int max = nums[0];
        for (int num:nums) {
   
            if (max<num){
   
                max=num;
            }
        }
        return max;
    }
    //求数列中最小值
    public static int min(int[] nums){
   
        int min = nums[0];
        for (int num:nums) {
   
            if (min>num){
   
                min=num;
            }
        }
        return min;
    }
}

2.冒泡排序

tips:相邻两位依次比较,每轮将最大值传递到当前轮次的最后一位。比较arr.length-1轮。

import java.util.Arrays;
import java.util.Random;

public class Test4 {
   
    /*冒泡排序法:
    1.目的:将打乱的数组重新排序,从小排到大,
    2.举例:arr[10]。
    3.步骤:
    第一轮:arr[0]~arr[9]依次比较相邻的两位数,将最大值传给到arr[9]。arr[0]和arr[1]比(如果arr[0]>arr[1],则交换位置。否则,不动),arr[1]和arr[2]比.....,即arr[9]是这个数组的最大值。
    第二轮:arr[0]~arr[8]依次比较相邻的两位数,将最大值传给到arr[8]。
             ·
             ·
             ·
    直到arr[0]~arr[1]比较。
    * */
    public static void main(String[] args) {
   
        //随机生成10位长的数组
        int[] nums = new int[10];
        Random random = new Random();
        int len = nums.length;
        for (int i = 0; i < len; i++) {
   
            nums[

你可能感兴趣的:(java,排序算法,java,算法)