C++ STL 中 unique() 函数详解

本文详细介绍了C++ STL中的unique()函数,该函数用于删除排序序列中的相邻重复元素。首先,文章阐述了unique()函数的基本原理,即通过覆盖重复元素来压缩序列,并返回最后一个不重复元素的迭代器。接着,通过一个完整的示例演示了unique()函数的实际应用。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

unique()函数用于删除序列中重复的相邻元素,注意一定是相邻元素(所以使用unique()函数前一般都需要进行排序),而且这里的删除也不是直接删除(会返回一个迭代器,之后再使用erase()函数进行删除)
1、其函数原型为:

iterator unique(iterator it_1,iterator it_2,bool MyFunc);
前两个参数都是迭代器,表示对区间[it_1, it_2)内进行去重(左闭右开,和许多其他STL函数都一样)

2、函数原理介绍:
其实原理比较简单,就是不断的将后面不重复的元素覆盖前面重复的元素,并且返回最后一个不重复元素的坐标(迭代器)
过程如下代码块所示:

iterator My_Unique (iterator first, iterator last)
{
   
if (first==last)
    return last;  
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值