1. 程式人生 > 其它 >C++ 去除重複項

C++ 去除重複項

要求

// 要求:將 str 中重複項去除 
string str{"A1","A8","A2","A2","A8","A3","A1","A4"};

小二上程式碼

#include <iostream>
#include <string>
#include <vector>
#include <algorithm> // 包含此標頭檔案

// 去除重複項並排序
void removeRepeat(std::vector<std::string> &items)
{
	std::sort(items.begin(), items.end());                // 排序一下項,把相鄰的項放在一起
	auto end_unique = unique(items.begin(), items.end()); // 把重複的項放在最後
	items.erase(end_unique, items.end());				  // 去掉重複的項
}

// 主函式
int main()
{	
	std::vector<std::string> items{ "A1","A8","A2","A2","A8","A3","A1","A4" };
	
	std::cout << std::endl << "去除重複項並排序前:";
	for (auto item : items)
		std::cout << item << " ";

	removeRepeat(items); // 去除重複項並排序

	std::cout << std::endl << "去除重複項並排序後:";
	for (auto item : items) 
		std::cout << item << " ";

	return 0;
}

除錯結果:

_End

完事兒。

本文來自部落格園,作者:拾荒荒,轉載請註明原文連結:https://www.cnblogs.com/lvvou/p/15686977.html