三 数组

简介: 三 数组

总结于尚硅谷视频

三 数组

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));
    }
}
相关文章
|
1月前
关于数组的两个应用
关于数组的两个应用
26 0
关于数组的两个应用
|
2月前
|
存储 算法 编译器
C 数组详解
在C语言中,数组是一种用于存储多个同类型数据的集合。本文介绍了数组的基本特性与使用方法,包括定义与初始化、索引访问、多维数组、指针操作、大小计算及函数传递等内容。数组名可视为指向首元素的指针,支持遍历、排序与查找等常见操作。数组大小固定,访问越界会导致未定义行为。此外,还可以将数组嵌套在结构体中以增加数据复杂性。
59 10
|
6月前
|
存储 算法 计算机视觉
数组
数组
48 0
|
6月前
|
存储 C++ 索引
C++数组
C++数组
55 0
|
6月前
|
存储 C++ 索引
c++数组
c++数组
39 1
|
6月前
1-9 数组
1-9 数组
27 0
|
6月前
数组练习2
数组练习2。
28 2
|
6月前
|
存储 程序员 C++
c++数组详细介绍(一)
前言 深入理解C++的数组和字符串是成为熟练C++程序员的重要一步。本文将探索C++中数组和字符串的基本概念,从基础到进阶,包括数组的声明、初始化、访问和多维数组的操作,以及字符串类的使用和与字符数组的转换。还将涉及异常处理、动态内存分配、STL中的其他容器、常用字符串操作。
115 0
|
机器学习/深度学习 Java
【数组的使用】
【数组的使用】
48 0
数组相关练习
数组相关练习
53 0