数组的使用

本文介绍了数组的基本概念,包括数组的定义、长度和下标。接着详细讲解了两种排序算法:冒泡排序和选择排序。冒泡排序通过不断交换相邻不正确顺序的元素,最终将最大值推至末尾;选择排序则是每次从剩余未排序部分找到最小值并放在已排序部分的末尾。示例代码展示了这两种排序方法的具体实现,可用于升序排列数组元素。
摘要由CSDN通过智能技术生成

数组的定义 

数组:一些具有相同数据类型的集合

数组的长度-就是对应着存放数据的个数  
 数组的下标-是数组赋值的依赖,从0开始
  0-第一个位置 1-第二个位置...最大下标-长度-1

数组的排序

一、冒泡排序

比较相邻的俩个数,如果按照顺序排序,
当前的数a,比后面的数b大时,
交换位置,第一轮过后,最大的值会排在数组后面,
经过n-1轮完成排序
public static void method01()
    {
        int as[]={12,14,10,-9,36,2,0,14,15};

        for (int i=0;i<as.length-1;i++)//外循环 比较轮次,大的放后面
        {
                 for(int j=0;j<as.length-1-i;j++)//每循坏一次,产生一个最大值,故减循坏长度减i
                 {
                     int a=as[j];
                     int b=as[j+1];
                     if (a>b)         //升序,降序>改<
                     {
                         int temp=as[j];//定义一个相同类型的变量来存放数组的值
                         as[j]=as[j+1];//把小的移到前一步
                         as[j+1]=temp;//把大的后移一位
                     }
                 }
        }
        System.out.println(Arrays.toString(as));   //通过Arrys.toString方法输出,不需要循坏就可输出
    }

二、选择排序

数组中的每个值与数组中的第一个值做对比,按照顺序排序,当第一个数a比这个数b大时交换位置
第一轮过后,最小的排在最左边,经过n-1轮完成排序
public static void method02()
    {

       
        int as[]={12,14,10,-9,36,2,0,14,15};
//升序排序
        System.out.println("排序前"+Arrays.toString(as));
        for (int i=0;i<as.length-1;i++)   //每个数组元素与第i个元素做对比,比他小的与它交换位置
        {
            for (int j=i+1;j<as.length-1;j++)  //从第i个后面开始比较,前面已经排好了i个,无需再比较
            {
                int  a=as[i];
                int b=as[j];
                if(a>b) //第i个大与第j个 ,交换位置,让小的在前面   //降序排序把>变<
                {
                    int c=as[j];
                    as[j]=as[i];
                    as[i]=c;



                }
            }
        }
        System.out.println("排序后"+Arrays.toString(as));
    }
}

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值