matlab语言unique,Matlab的unique函数的C++实现
时间: 2024-02-20 08:58:01 浏览: 103
matlab smooth函数C++实现,matlab的smooth函数,C,C++
5星 · 资源好评率100%
Matlab的unique函数是用于返回数组中不同元素的值。在C++中,可以使用以下代码实现类似的功能:
```c++
#include <iostream>
#include <vector>
#include <algorithm>
std::vector<int> unique(std::vector<int> vec)
{
std::sort(vec.begin(), vec.end());
auto it = std::unique(vec.begin(), vec.end());
vec.resize(std::distance(vec.begin(), it));
return vec;
}
int main()
{
std::vector<int> vec = {1, 2, 3, 4, 3, 2, 1};
std::vector<int> unique_vec = unique(vec);
for(auto i : unique_vec)
{
std::cout << i << " ";
}
std::cout << std::endl;
return 0;
}
```
这里使用了C++的STL库中的sort和unique函数,通过对数组排序,然后使用unique函数去掉重复元素,最后使用resize函数调整数组大小。
阅读全文