小编Yur*_*nko的帖子

如何仅从列表中获取唯一元素?

我有一个清单,比如说[1,2,3,4,3,2,4]。我想输出每个元素一次,例如[1,2,3,4]。我怎样才能在 Haskell 中做到这一点?

haskell functional-programming list unique

3
推荐指数
3
解决办法
1364
查看次数

仅使用绝对值对数组进行排序并在 C++ 中显示实际值

打印绝对排序数组。有关说明,请参阅示例输出。

input:  arr = [2, -7, -2, -2, 0]
output: [0, -2, -2, 2, -7]
Run Code Online (Sandbox Code Playgroud)

现在我使用 lambda 函数作为 STL 的比较器,std::sort但它没有给出正确的答案;帮助将不胜感激。

代码:

vector<int> absSort(const vector<int>& at)
{
  vector <int> arr = at;
  
  sort(arr.begin(), arr.end(), [&](const int a, const int b){
    if (abs(a) < abs(b)) return -1;
    if (abs(a) > abs(b)) return 1;
    
    if (a < b) return -1;
    if (a > b) return 1;
    return 0;
    
  });
  return arr;
}
Run Code Online (Sandbox Code Playgroud)

c++

3
推荐指数
1
解决办法
306
查看次数

标签 统计

c++ ×1

functional-programming ×1

haskell ×1

list ×1

unique ×1