unique()函数

这篇博客是本人在学习算法中遇到的一个常用的函数,记录分享给大家

注意 :unique()函数是删除相邻的重复元素,并且返回的是去重范围后的第一个元素的地址,左闭右开

cpp 复制代码
#include <bits/stdc++.h>
using namespace std;
int main()
{
  vector<int> v={5,2,7,4,1,2,4,5,1};
  sort(v.begin(),v.end());
  
  auto pos=unique(v.begin(),v.end());
  v.erase(pos,v.end());
  for(auto e : v)
  {
    cout<<e<<" ";
  }
  
  
  int a[10]={1,3,2,4,6,2,1,1,5,2};
  sort(a,a+10);
  int n=unique(a,a+10)-a;//返回的是地址,所以要减去首元素的地址,得到n
  //注意nuique的返回的是删除完的数组,
  //的最后一个元素的下一个位置的地址
 
  for(int i=0;i<n;i++)
  {
    cout<<a[i]<<" ";
  }

  return 0;
}
相关推荐
高亦真3 小时前
今天是学习嵌入式的第32天
linux·学习·算法
远离UE43 小时前
UE5 shader instructions
java·开发语言
OPEN-F10 小时前
C++进阶教程:继承与多态
开发语言·c++
鹿角片ljp11 小时前
LeetCode 236. 二叉树的最近公共祖先|递归后序
算法
luj_176812 小时前
大律师考核应重能力与科技素养
c语言·开发语言·c++·经验分享·算法
无定义_12 小时前
Floyd——Warshall
算法
刃神太酷啦12 小时前
Linux 系统 MySQL 完整安装配置教程:从卸载 MariaDB 到优化 my.cnf----《Hello MySQL!》(1)
android·linux·c语言·c++·mysql·leetcode·mariadb
带多刺的玫瑰13 小时前
Leecode#9刷题之回文数
数据结构·算法
leonkay13 小时前
C# 特性(Attribute)——【1】基础讲解
开发语言·青少年编程·面试·c#·.net·个人开发
harmful_sheep13 小时前
java group by常见用法
java·开发语言·python