冒泡排序应该是我接触的第一排序算法吧,初学C语言的时候就学了冒泡排序算法,现在做一下简单的记录。
冒泡排序的核心思想就是两两比较相邻元素来调整元素位置,是稳定排序,平均时间复杂度为,n为要排序的元素的个数,简单图示如下:
此处省略其他步骤...
冒泡排序算法的简单实现:
int bubbleSort(int *pArray, int len)
{
if (NULL == pArray || len < 1)
{
return 0;
}
for (int i = 0; i < len; i++)
{
for (int j = len - 2; j >= i; j--)
{
if (pArray[j] > pArray[j + 1])
{
pArray[j] += pArray[j + 1];
pArray[j + 1] = pArray[j] - pArray[j + 1];
pArray[j] = pArray[j] - pArray[j + 1];
}
}
}
return 1;
}
一图汗漫秋水阔,雁鸿排序投潇湘。