鱼C论坛

 找回密码
 立即注册
查看: 3181|回复: 0

[学习笔记] JAVA学习Day6【二维数组】

[复制链接]
发表于 2020-8-17 13:48:31 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
本帖最后由 糖逗 于 2020-8-17 13:52 编辑

学习视频:https://www.bilibili.com/video/BV17J411G72L?p=20

108-120
/*
*数组的查找(1)数组中元素时无序的(2)元素是有序的
*/

class test06_01{
        public static void main(String[] args){
                //无序则顺序查找
                int[] arr = {1, 4, 3, 2};
                int value = 2;
                for(int i = 0; i < arr.length; i++){
                        if(arr[i] == value){
                                System.out.println("find!");
                                break;
                        }
                }
                //有序,二分查找
                int[] arr1 = {1, 3, 4, 6, 7, 9};
                int left = 0, right = arr.length - 1;
                int mid = (left + right)/2;
                while(left < right){
                        if(arr[mid] == value){
                                System.out.println("找到了!");
                        }else if(value > arr[mid]){
                                left = mid + 1;
                        }else{
                                right = mid - 1;
                        }
                        mid = (left + right) / 2;
                }
        }
}


/*
*排序
*/


class test06_02{
        public static void main(String[] args){
                //冒泡排序
                int[] arr = {4, 2, 3, 5, 9};
                //相邻元素比较,不符合就交换
                for(int i = 1; i < arr.length; i++){
                        for(int j = 0; j < arr.length - i; j++){
                                if(arr[j] > arr[j-1]){
                                        int temp = arr[j];
                                        arr[j] = arr[j-1];
                                        arr[j-1] = temp;
                                }
                        }
                }

                for(int i = 0; i < arr.length; i++){
                        System.out.println(arr[i]);
                }
                //直接选择排序

                for(int i = 0; i < arr.length - 1; i++){
                        //找出本轮未排序元素中的最小值及其下标
                        int min = arr[i];
                        int index = i;
                        for(int j = i + 1; j < arr.length; j++){
                                if(arr[j] < min){
                                        min = arr[j];
                                        index = j;
                                }
                        }
                        //看最小值是否在它应该在的位置
                        if(index != i){
                                int temp = arr[i];
                                arr[i] = arr[index];
                                arr[index] = temp;
                        }
                }

        }
}

//数组的维度
class test06_03{
        public static void main(String[] args){
                //静态初始化
                //(1)
                int[][] scores;
                scores = new int[][]{{23,23,43}, {23,33,22, 43}, {33,22}};
                //(2)
                int[][] score = {{23,23,43}, {23,33,22, 43}, {33,22}};
                //遍历
                for(int i = 0; i < scores.length; i++){
                        for(int j = 0 ; j < scores[i].length; j++){
                                System.out.print(scores[i][j] + " ");
                        }
                        System.out.println();
                }
                //动态初始化
                //(1)确定行数
                int[][] arr = new int[4][];
                //(2)确定每一行的列数
                for(int i = 0; i < arr.length; i++){
                        arr[i] = new int[5];
                }
                //(3)确定元素值
                for(int i = 0; i < arr.length; i++){
                        for(int j = 0; j < arr[i].length; j++){
                                arr[i][j] = i + 1;
                        }
                }
                //每行的列数相同可以直接
                int[][]arr1 = new int[4][5];
        }
}

静态初始化存储

静态初始化存储

动态初始化存储

动态初始化存储

本帖被以下淘专辑推荐:

想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-12-23 02:55

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表