冒泡排序和选择排序
时间一久,两个排序都搞不清楚区别了。手写一遍如下:
1. 冒泡排序,强调相邻元素的比较,后面的元素都是已经确定位置的
//冒泡排序
for(int i=0; i<n-1; i++) {
for(int j=0; j<n-1-i; j++) {
if(a[j] > a[j+1]) {
int tmp = a[j];
a[j] = a[j+1];
a[j+1] = tmp;
}
}
}
2. 选择排序,前面的一个和后面的依次比较,前面的元素都是已经确定位置的
// 选择排序
for(int i=0; i<n-1; i++) {
for(int j=i+1; j<n; j++) {
if(a[j] < a[i]) {
int tmp = a[j];
a[j] = a[i];
a[i] = tmp;
}
}
}

浙公网安备 33010602011771号