2020-09-24Java学习记录

依然 数组

缺点:

第一:由于为了保证数组中每个元素内存地址连续,所以在数组上随机删除或者增加元素的时候,效率较低,因为随机增删元素会涉及到后面元素统一向前或者向后位移的操作。

第二:数组不能存储大数据量,为什么?因为很难在内存空间上找到一块特别大的连续的内存空间

注意:对于数组中最后一个元素的增删,是没有效率影响的

怎么声明定义一个一维数组?

语法格式:

int [] array1;

double [] array2;

boolean[] array3;

String [] array4;

Object [] array5;

怎么初始化一个一维数组,动态初始化一维数组。

包括两种方式:静态初始化一维数组,动态初始化一维数组。

静态初始化语法格式:

int[] array = {100…};

动态初始化语法格式:

int[] array =new int[5];//这里的5表示数组的元素个数。

//初始化一个5个长度的int类型数组,每 个元素默认值0。

String[] names =new String[6];//初始化6个长度的String类型数组,每个元素默认值null。

拷贝数组

System.arraycopy(Object src,int srcPos,Object dest,int destPos,int length)

二维数组

二维数组静态初始化

int[][] array={{1,1,1},{1,2,3,4},{0,0,0}}

常见算法:

排序算法:

冒泡排序算法

选择排序算法

查找算法:

二分法查找

算法实际上在java中不需要精通,因为java已经封装好了,要排序就调用方法就行。例如:java中提供了一个数组工具类:

java.util.Arrays

Arrays是一个工具类

其中有一个方法sort()方法,可以排序。静态方法,直接使用类名调用就行。

选择排序:

选择排序比冒泡排序的效率高

高在交换位置的次数上

选择排序的交换位置是有意义的

冒泡排序和选择排序实际上比较的次数没变

交换次数变少了

循环一次,然后找出参加比较的这堆数据中最小的,拿着这个最小的值和最前面的数据交换位置

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值