`
王浩洋
  • 浏览: 16557 次
  • 性别: Icon_minigender_1
社区版块
存档分类
最新评论

数组总结

    博客分类:
  • java
阅读更多
数组总结
1.数组是什么?
  数组是一个能存放多个相同类型数据且长度固定的容器,是java最基本的数据结构。
2.数组的定义方法
  有三种,常用的就两种:
     1.数据类型 [ ]数组名=new 数据类型[长度];
如:int [ ]array=new int[10];
     2.数据类型 [ ]数组名={数据1,数据2,...};
如:int [ ]array={1,3,4,2,5};
    第三种不常用,定义方式如下:
       数据类型 [ ]数组名=new 数据类型[ ]{数据1,数据2,...};
     如:int [ ]array=new int[ ]{1,3,4,2,5};
  当数组定义时只给定了长度,数组中每个位置都会有一个默认值,当数据类型为基本数据类型时,
数组元素都为0,当为自定义类类型时,数组元素都为null;
3.对数组的排序
数组的排序主要可以分为四种方法:冒泡,选择,插入,希尔。
代码如下:
冒泡排序:
for (int i = 0; i < array.length; i++) {
			for (int j = i + 1; j < array.length; j++) {
				if (array[i] > array[j]) {
					int temp = array[i];
					array[i] = array[j];
					array[j] = temp;
				}
			}
		}

选择排序:
for (int i = 0; i < array.length; i++) {
			int minIndex=i;
			for(int j=i+1;j<array.length;j++){
				if(array[j]<array[minIndex]){
					minIndex=j;
				}
			}
			int temp=array[i];
			array[i]=array[minIndex];
			array[minIndex]=temp;
		}

插入排序:
for (int i = 0; i < array.length; i++) {
			for(int j=i;j>0;j--){
				if(array[j]<array[j-1]){
					int temp=array[j];
					array[j]=array[j-1];
					array[j-1]=temp;
				}
			}
		}

希尔排序:
for (int increment = array.length / 2; increment > 0; increment /= 2) {
			for (int i = increment; i < array.length; i++) {
				int temp = array[i];
				int j = 0;
				for (j = i; j >= increment; j -= increment) {
					if (temp < array[j - increment]) {
						array[j] = array[j - increment];
					} else {
						break;
					}
				}
				array[j] = temp;
			}
		}

4.数组的优缺点
优点:1.可以将相同的数据类型的数据储存起来
       2.访问速度快,可以通过下标直接访问
       3.有时可以简化代码,提高效率
缺点:1.数组长度固定,对于存放不确定个数的数据时使用不便
       2.只能存放一种数据类型
分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics