冒泡排序的相关注意事项

今天看了一下C语言的书本 ,搞懂了曾经还不是非常懂得冒泡排序,特意来记录一下

冒泡排序的核心就是先遍历数组整个的大小,然后把最大的放在最后面,然后再遍历数组的大小减1 把倒数第二大的数字放在倒数第二个,依次这样循环下去

要注意这里的pass 必须要从1开始,否则要产生越界!

void bubbleSort(int list[], int arraySize){
	int pass, i, temp;
	//pass必须从1开始 若pass=0的时候,则下面的i会到最终的数组大小的时候,i+1会产生越界,因此会产生乱码
	for (pass = 1; pass<arraySize; ++pass){
		for (i = 0; i<arraySize - pass; ++i){
			if (list[i] >= list[i + 1]){
				temp = list[i];
				list[i] = list[i + 1];
				list[i + 1] = temp;
			}
		}
	}
}



详见C语言基础的248页

你可能感兴趣的:(冒泡排序的相关注意事项)