`
wangjie2013
  • 浏览: 169630 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

java笔记(04,对数组进行选择排序和冒泡排序)

    博客分类:
  • JAVA
阅读更多

 

       Last modified:2013-04-09 23:26:34

       ***********************************************

 

数组:同一种类型数据的集合.其实数组就是一个容器;

格式元素类型[] 数组名 = new 元素类型[元素格数或数组长度]{...};

new:在内存中产生一个容器实体;

新建一个数组,但是不知道里面装什么的时候,要指定数组的大小!

数组是一种单独的数据类型;引用数据类型之一(三种);

:用完后自动释放;

:new可以在堆中建立一个空间存放对象;数组也是一种对象;

堆的特性:地址,垃圾处理机制,有特定的初始值;

编译成功说明没有语法错误,但运行不一定成功;

排序:常用的是冒泡排序和选择排序;

 

 

   1.选择排序:
  public static void selectSort(int[] arr) {
		for (int i = 0; i < arr.length-1; i++) {
			for(int j = i+1;j<arr.length;j++){
				exchange(arr, i, j);
			 }	
		 }
   }

 

 

 

2.冒泡排序:初始化从零开始,判断条件为y<arr.length-x-1;-x为了减少遍历次数;-1为了防止越界;

 

public static void bubbleSort(int[] arr) {
		for (int i = 0; i < arr.length-1; i++) {
			for (int j = 0; j < arr.length-1-i; j++) {
                                //-i为了减少遍历次数;-1为了防止越界;
				exchange(arr, j, j+1);	
			}
		}
	}

 

        exchange方法用于交换两个数的位置:

  public static void exchange(int[] arr,int i,int j)
  {
          arr[j]=arr[j]^arr[i];
          arr[i]=arr[j]^arr[i];
          arr[j]=arr[j]^arr[i];
  }

 

 

 

 

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics