- 冒泡排序
#include <iostream>
void printfArray(int arr[], int n)
{
for (int i = 0; i < n; ++i)
{
std::cout << arr[i] << " ";
}
std::cout << std::endl;
}
//冒泡排序
void bubbleSort(int arr[], int n)
{
int tmp = 0;
for (int i = 0; i < n - 1; ++i)
{
for (int j = 0; j < n - i - 1; ++j)
{
if (arr[j] > arr[j + 1])
{
tmp = arr[j];
arr[j] = arr[j + 1];
arr[j + 1] = tmp;
}
}
}
}
//冒泡排序
void bubbleSort2(int arr[], int n)
{
int tmp = 0;
for (int i = 0; i < n; ++i)
{
for (int j = i + 1; j < n; ++j)
{
if (arr[i] > arr[j])
{
tmp = arr[i];
arr[i] = arr[j];
arr[j] = tmp;
}
}
}
}
int main(int argc, char** argv)
{
int arr[8] = { 3, 1, 5, 7, 2, 4, 9, 6 };
std::cout << "顺序前:" << std::endl;
printfArray(arr, 8);
<pre name="code" class="cpp"> bubbleSort(arr, 8);
std::cout << "顺序后:" << std::endl;
printfArray(arr, 8);
return 0;
}
效率:
时间复杂度:O(n^2)