美文网首页
数组加强

数组加强

作者: WYZ_8db0 | 来源:发表于2019-03-20 23:18 被阅读0次

数组加强

冒泡排序:

通过代码实现数组中元素的从小到大排列

思路:按角标从小到大的顺序将元素两两之间进行比较,如果前面元素的值比后面的大则交换值

if(arr[1]>arr[2]){

int temp=arr[1];

arr[1]=arr[2];

arr[2]=temp;

}

比较完所有次数最后一位会是数组的最大值,则开始的下一轮比较上一轮产生的最大值不参与

二分法:

查询一个元素在数组中的位置

思路:和数组中间位置(索引)进行比较,来判断其元素所属的范围区间,如果比中间值大则中间值(索引)+1位置为区间最小值,小于中间值则中间值(索引)-1位置为区间最大值,查找过程在最大值等于最小值是结束

static int getIndex(int num,int[] arr){

int minindex=0;//最小值

int maxindex=arr.length-1;//最大值

int midindex=(minindex+maxindex)/2;//中间值

while(minindex<=maxindex){//最小值等于最大值跳出循环

if(num>arr[midindex]){//判断区间

minindex=midindex+1;

}else if(num

maxindex=midindex-1;

}else if(num==arr[midindex]){//找到了返回值

return midindex;

}

midindex=(minindex+maxindex)/2;

}

return -1;

}

二维数组

概念:

二维数组本质是元素为一维数组的数组

语法:

动态创建:

数据类型[][]数组名=new数据类型[长度][长度];

静态创建:

数据类型[][]={{元素1,元素2},{元素1,元素2},{元素1,元素2}};

二维数组的遍历:

增强for循环遍历

public static void main(String[] args){

int[][] ar={{1,2,3},{4,5,6},{7,8,9}};

for(int[] e:ar){//forech遍历外层二维数组得到一维数组

for(int a:e){//forech遍历每一个数组得到元素

System.out.println(a);//打印元素

}

}

}

for循环遍历

for(int i=0;i<=ar.length-1;i++){

for(int j=0;i<=ar[i].length-1;j++){

System.out.print(ar[i][j]);

}

}

增强for循环

语法:

for(数据类型 e:源){//源可以是数组与集合

System.out.peintln(e);

}

执行过程;

每次从源中遍历的数据,都临时存放在里面,可以在循环内部,通过e取出到每一个元素

工具类

概念;

java中已经写好的类和方法直接拿出来使用就可以了

使用api文档

通过索引查找类

java.util包名

如何调用方法

可变参数

概念:

可变参数的概念:方法传入【实参】参数的个数可变

语法:

数据类型...参数名字

细节:

可变参数的语法细节

static void print(String name,int ... a){可以

static void print(int ... a,String name){不行

static void print(int ... a,String ... name){不行

可变参数的前面可以写普通的参数类型,不能写可变参数类型

可变参数的后面:什么都不能写

相关文章

  • 数组加强

    数组加强 冒泡排序: 通过代码实现数组中元素的从小到大排列 思路:按角标从小到大的顺序将元素两两之间进行比较,如果...

  • 中级和函数

    二 加强阶段重点学习方向 1,数组公式(将函数和数组结合) 数组公式可以认为是Excel对公式和数组的一种扩充,换...

  • Excel 数组-彻底理解数组以及数组的运算原理

    本篇目的是加强自己对excel数组的理解,具体内容,请看原文。原文链接:彻底理解数组以及数组的运算原理1、数组的表...

  • java基础(三) 加强型for循环与Iterator

    引言 从JDK1.5起,增加了加强型的for循环语法,也被称为 “for-Each 循环”。加强型循环在操作数组与...

  • 5.16课程小结

    今天的课程内容是对二维数组的学习,要注意二维数组的应用,理解二维数组在内存当中的存储方式。补充讲解了运算符,加强运...

  • 数组和对象的区别

    下方有原文链接、这一版只是自己为了加强记忆所的 关键词:数组&对象 创建数组和对象 对象没有长度 调用方法不同 因...

  • Python中的列表及常用操作方法

    1、列表 列表是python中支持的一种有序集合,在Python解释器中它本质是C数组,但是它却比C数组更加强大。...

  • 一文读懂JDK1.7,JDK1.8,JDK1.9的hashmap

    本篇为威力加强升级版本,读到最后,有惊吓 1:hashmap简介(如下,数组-链表形式) HashMap的存储结构...

  • 增强for

    增强for是for循环的升级加强版,底层原理是 Iterator 迭代器。作用是遍历集合或者数组,无法对集合进行增...

  • 2017.9.16

    Today,上午继续了 习题的讲解,我数学逻辑有待加强、思维模式有点跟不上。 学习了新的内容,二维数组 float...

网友评论

      本文标题:数组加强

      本文链接:https://www.haomeiwen.com/subject/kooxvqtx.html