#include <iostream>
#include <vector>
class Sorter
{
public:
// 冒泡排序
bool bubbleSort(std::vector<int>& intVector)
{
if (intVector.empty())
{
return false;
}
int intSize = intVector.size();
for (int intOuter = 0; intOuter < intSize - 1; intOuter++)
{
for (int intInner = 0; intInner < intSize - intOuter - 1; intInner++)
{
if (intVector[intInner] > intVector[intInner + 1])
{
std::swap(intVector[intInner], intVector[intInner + 1]);
}
}
}
return true;
}
// 选择排序
bool selectionSort(std::vector<int>& intVector)
{
if (intVector.empty())
{
return false;
}
int intSize = intVector.size();
for (int intOuter = 0; intOuter < intSize - 1; intOuter++)
{
int intMinIndex = intOuter;
for (int intInner = intOuter + 1; intInner < intSize; intInner++)
{
if (intVector[intInner] < intVector[intMinIndex])
{
intMinIndex = intInner;
}
}
std::swap(intVector[intMinIndex], intVector[intOuter]);
}
return true;
}
// 插入排序
bool insertionSort(std::vector<int>& intVector)
{
if (intVector.empty())
{
return false;
}
int intSize = intVector.size();
for (int intOuter = 1; intOuter < intSize; intOuter++)
{
int intKey = intVector[intOuter];
int intInner = intOuter - 1;
while (intInner >= 0 && intVector[intInner] > i