`
wangjie2013
  • 浏览: 175449 次
  • 性别: 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];
  }

 

 

 

 

分享到:
评论

相关推荐

    java学习笔记(排序,数组)

    数组是存储固定数量同类型元素的数据结构,而排序算法则是对数组中的元素进行排列的方法。让我们详细了解一下这两个主题。 一、数组 1. **定义**:数组是一种线性数据结构,它在内存中连续存储同一类型的元素。...

    java基础笔记

    // 对数组进行排序 for (int i : a) { System.out.print(i); } ``` 2. **冒泡排序**:通过不断交换相邻的不正确顺序的元素来排序,时间复杂度为O(n^2)。以下是冒泡排序的Java实现: ```java public static int[] ...

    Java学习笔记,数组初步

    冒泡排序是最常用的排序算法,在笔试中也非常常见,能手写出冒泡排序算法可以说是基本的素养。本节讲解冒泡的基础算法和优化算法,既提高大家算法的素养,也可以从容面对找工作时 JAVA 的笔试题目。 冒泡排序算法的...

    java学习笔记.docx

    - 原理: 通过比较相邻的元素并交换它们的位置来对数组进行排序。 - 实现步骤: - 外层循环控制排序的轮数。 - 内层循环控制每轮的比较和交换。 ### 十、方法 - **定义**: 方法是一段完成特定任务的代码块。 - *...

    JAVA学习笔记

    常见的排序算法有冒泡排序、选择排序、插入排序等。 #### 六、抽象类、接口 抽象类和接口都是用来定义类的行为和结构的。 ##### 1. 抽象类 抽象类不能被实例化,它主要用于定义其他类共有的行为。 ##### 2. ...

    数据结构_数组_操作笔记_Java实现_1741870697.zip

    数组的排序也是常用的操作,常用的排序算法有冒泡排序、选择排序、插入排序等。数组的查找操作则是用来定位特定元素的,常用的查找算法有顺序查找和二分查找。这些操作不仅加深了对数组结构的理解,也锻炼了编程能力...

    Java笔记综合

    - **调用示例**:使用Arrays类的sort方法对数组进行排序。 **2.15 二进制基础** - **二进制数**:由0和1组成的数。 - **位运算符**:&、|、^、~、、&gt;&gt;、&gt;&gt;&gt;。 **2.16 Java基础其他注意事项** - **异常处理**:...

    麻省理工学院算法导论中英文版习题笔记全

    排序是将一组数据按照特定顺序排列的过程,常见的排序算法有冒泡排序、选择排序、插入排序、快速排序、归并排序、堆排序等。这些排序算法各有优劣,例如冒泡排序和插入排序简单易懂,但效率较低;快速排序和归并排序...

Global site tag (gtag.js) - Google Analytics