冒泡排序

52 阅读1分钟

第一次写博客,不是很会,请多多指教。 我尝试写了一下冒泡排序,有不足请见谅。

#include<iostream>
#include<vector>
#include<algorithm>

template<typename T>
void bubble_sort(std::vector<T>* v,int size);

int main()
{
	std::vector<int> v{ 2,7,1,3 };
	for (auto i : v)
	{
		std::cout << i << " ";
	}
	bubble_sort(&v, v.size());
	std::cout << std::endl;
	for (auto i : v)
	{
		std::cout << i << " ";
	}
	return 0;
}

template<typename T>
void bubble_sort(std::vector<T>* v, int size)
{
	if (size == 1)
		return;

	for (int i = 0; i < size-1; ++i)
	{
		if ((*v)[i] > (*v)[i + 1])
		{
			std::swap((*v)[i], (*v)[i + 1]);
		}
	}
	bubble_sort(v, size - 1);
}