读书人

数据结构3冒泡排序amp;选择排序

发布时间: 2012-10-14 14:55:08 作者: rapoo

数据结构三冒泡排序&选择排序
冒泡排序:
比较两个元素,如果前一个比后一个大则进行交换,经过对每个元素的比较,最后将最大的元素设置成最后一个元素。重复该操作。

public void bubbleSort() {long tmp = 0L;for(int i = 0; i < elems - 1; i++) {for(int j = 0; j < elems - i - 1; j++) {if(arr[j] > arr[j + 1]){tmp = arr[j];arr[j] = arr[j + 1];arr[j + 1] = tmp;}}}}
选择排序:
扫描所有的元素,得到最小元素,并将最小的元素与左边第一个元素进行交换。再次扫描除第一个位置的所有元素,得到最小元素,与左边第二个元素进行交换,以此类推。
public void selectSort(){int min = 0;long tmp = 0L;for(int i = 0; i < elems -1; i++){min = i;for(int j = i + 1; j < elems; j++) {if(arr[j] < arr[min]) {min = j;}}tmp = arr[i];arr[i] = arr[min];arr[min] = tmp;}}

读书人网 >编程

热点推荐