您的位置:首页 > 编程语言 > Java开发

Java基础:Day06笔记内容 (选择排序)

2016-02-25 10:39 543 查看
1.选择排序

每一次从待排序的数据元素中选出最小(或最大)的一个元素,存放在序列的起始位置,直到全部待排序的数据元素排完.

代码练习:

class Demo1_SelectSort {

public static void main(String[] args) {

int [] arr = {3,8,9,22,11,90};

selectSort(arr); //升序

System.out.println(getIndex2(arr,55));

}

//选择排序 ,升序

public static void selectSort(int[] arr) {

//数组通常和循环配合使用

for (int i = 0; i < arr.length - 1 ;i++ ) { ///我们需要找几次最值??

//-1是因为5个数只需找四次最值.

for (int j = i + 1 ; j < arr.length ; j++) {

//从0开始,当前位置和其后每个数依次比较,将

if (arr[j] < arr[i]) {

//交换,将较小的数放i 的位置

swap(arr,j,i);

} //较小的数放在当前位置.

}

}

}

2.冒泡排序

遍历要排序的数列,依次比较两个元素,把顺序错误的交换过来, 重复进行直到没有需要交换的.

代码练习:



3.二分查找

优点是比较次数少, 缺点是要求待查表为有序表,且插入删除困难。二分查找方法适用于不经常变动而查找频繁的有序列表。

假设表中元素是按升序排列,将表中间位置的元素与查找的值比较,如果两者相等,则查找成功;否则从中间将表分成前、后两部分,如果中间位置记录的元素大于查找的元素,则查前半部分,否则查后半部分。重复直到找到或表已查完.

代码如下:





二维数组

二维数组本质上是以数组作为数组元素的数组,即“数组的数组”。

二维数组的格式:





代码练习:



部分笔记内容,整个笔记一共27天,打包下载:

网盘地址——链接:http://pan.baidu.com/s/1c1iem6c 密码:8lj8
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: