关于sort的潦草的笔记

● 升序:sort(begin,end,less<data-type>())

●降序:sort(begin,end,greater<data-type>())

默认为升序

	int b[5] = { 1,5,2,3,7 };
	sort(b,b+5, greater<int>());
	for (int i = 0; i < 5; i++)
	{
		cout << b[i];
	}
	

 或是自行编写比较方法:

bool cmp(int a, int b) {
	return a > b;
}

int main()
{
	
	int a[3] = { 1,3,2 };
	sort(a, a + 3,cmp);
	for (int i = 0; i < 3; i++)
	{
		cout << a[i];
	}
}

同时也对字符串string起作用:

	string sen;
	sen = "asfhaslsankca";
	sort(sen.begin(), sen.end());
	cout << sen;

 对vector的二维字符串数组:

	vector<string> ssaw;
	ssaw.push_back("heiiiiiiwho is you");
	ssaw.push_back("wwwwwww");
	ssaw.push_back("qwdqad");
	sort(ssaw.begin(), ssaw.end(), greater<string>());
	for (int i = 0; i < 3; i++)
	{
		cout << ssaw[i];
	}

但遗憾的是,暂时没能找到sort直接对char类型的二维数组进行排序的方案。

所以暂时只能自行编写sort函数或是将其转换为其他类型的数组进行排序。

猜你喜欢

转载自blog.csdn.net/Tokameine/article/details/112431218