三 数组

简介: 三 数组

总结于尚硅谷视频

三 数组

1 数组的概述

可以看我好朋友Crash-struggle的博客

https://blog.csdn.net/weixin_51740288/article/details/111464014?spm=1001.2014.3001.5501

2 一维数组的使用

可以看我好朋友Crash-struggle的博客

https://blog.csdn.net/weixin_51740288/article/details/115311294?spm=1001.2014.3001.5501

3 多维数组的使用

可以看我好朋友Crash-struggle的博客

https://blog.csdn.net/weixin_51740288/article/details/115311294?spm=1001.2014.3001.5501

4 数组算法

package com.arr.bjsxt.array;
public class Excpai {
    //数组排序方法
    public static void bubbleSort(int[] values) {
        if (values == null||values.length==1)return;
        for (int i = 0; i < values.length - 1; i++) {
            boolean isSorted = true;
            for (int j = 0; j < values.length - 1 - i; j++) {
                if (values[j] > values[j + 1]) {
                    int temp = values[j];
                    values[j] = values[j + 1];
                    values[j + 1] = temp;
                    isSorted = false;
                }
            }
            if (isSorted)
                break;
        }
    }
    //主方法
    public static void main(String[] args) {
        int[] arr = {1, 3, 2,3,5,7,8,9,10};
        bubbleSort(arr);
        print(arr);
    }
    //打印数组方法
    public static void print(int[] arr){
        if (arr==null)  return;
        for (int i :arr){
            System.out.print(i+" ");
        }
        System.out.println();
    }
}
package com.arr.bjsxt.array;
import java.util.Arrays;
public class Exccha {
    public static void main(String[] args) {
        int[] arr ={30,20,50,10,80,9,7,12,100,40,8};
        int searchWord = 20;
        Arrays.sort(arr);
        System.out.println(Arrays.toString(arr));
        System.out.println(searchWord+"元素的索引:"+binarySearch(arr,searchWord));
    }
    public static int binarySearch(int[] array,int value){
        int low=0;
        int high=array.length-1;
        while (low<=high){
            int middle=(low+high)/2;
            if(value==array[middle]){
                return middle;
            }
            if(value>array[middle]){
                low=middle+1;
            }
            if(value<array[middle]){
                high=middle-1;
            }
        }
        return -1;
    }
}

5 Arrays工具类的使用

package com.arr.bjsxt.array;
import java.util.Arrays;
/**
 * 测试java,util.Arrays类
 *这个类是Java提供给我们提供给我们操作数组的工具类
 * 提供了常见的:排序、查找、填充、打印数组内容的相关方法。
 */
public class Test03 {
    public static void main(String[] args) {
//        int[] a={100,200,300};
//        //测试打印
//        System.out.println(Arrays.toString(a));//打印数组内容
        //测试排序
//         int[] a={com.1,2,323,23,543,12,59};
//        System.out.println(Arrays.toString(a));
//        Arrays.sort(a);
//        System.out.println(Arrays.toString(a));
        //测试二分法查找
//        int[] a={com.1,2,323,23,543,12,59};
//        System.out.println(Arrays.toString(a));
//        Arrays.sort(a);     //使用二分法查找,必须对数组进行排序
//        System.out.println(Arrays.toString(a));
//        //返回排序后的新索引位置,若未找到返回负数。
//        System.out.println("该元素的索引:"+Arrays.binarySearch(a,12));//排序后的序号2
        //替换
        int[] a={1,2,323,23,543,12,59};
        System.out.println(Arrays.toString(a));
        Arrays.fill(a,2,4,100);//将2到4的索引的元素替换为100;
        System.out.println(Arrays.toString(a));
    }
}
相关文章
|
22天前
|
存储 C++ 索引
C++数组
C++数组
|
29天前
1-9 数组
1-9 数组
9 0
|
2月前
|
存储 C++ 索引
c++数组
c++数组
17 1
|
7月前
|
存储 C语言 索引
C 数组
C 数组。
22 0
|
3月前
|
机器学习/深度学习 人工智能 JavaScript
数组练习
数组练习。
16 0
|
9月前
|
存储 机器学习/深度学习 Java
原来这就是数组
原来这就是数组
52 0
|
5月前
|
存储 JavaScript 前端开发
|
5月前
|
存储 编译器 程序员
数组详解
数组详解
44 0
|
9月前
|
存储 编译器 C语言
C语言知识点之 数组
C语言知识点之 数组
49 0
|
10月前
|
C# 索引
C#视频-数组
C#视频-数组
36 0