C++ 排序C++;-&引用;无效运算符“; #包括 #包括 #包括 #包括 #包括 #包括 #包括 #包括 #包括 #包括 #包括 #包括 #包括 #包括 #包括 #包括 #包括 #包括 #包括 使用名称空间std; bool-fun(inti,intj){ 返回abs(i-j)!=-1; } int main(){ 向量v={1,2,3,4,5}; 排序(v.begin(),v.end(),fun); 对于(int i=0;i
如何修改此函数以使程序正常运行C++ 排序C++;-&引用;无效运算符“; #包括 #包括 #包括 #包括 #包括 #包括 #包括 #包括 #包括 #包括 #包括 #包括 #包括 #包括 #包括 #包括 #包括 #包括 #包括 使用名称空间std; bool-fun(inti,intj){ 返回abs(i-j)!=-1; } int main(){ 向量v={1,2,3,4,5}; 排序(v.begin(),v.end(),fun); 对于(int i=0;i,c++,sorting,C++,Sorting,如何修改此函数以使程序正常运行 假设您想按升序排序。只需使用运算符您的fun函数不提供严格的弱排序。如果i和j相等,它将返回true。因此您没有遵守规则。标准库的实现通过抛出异常来响应 请允许我问一下,当你最多需要4个文件时,为什么要包括所有这些文件?@Mahmoud Arafa This condition abs(I-j)“= -1总是等于true,不依赖于比较的值。”:“BoGrad简单地说他没有时间包括所有的C++头。”:如果你考虑每个数字比每个数字小,你会得到什么结果?我得到了,但是我
假设您想按升序排序。只需使用
运算符您的fun
函数不提供严格的弱排序。如果i
和j
相等,它将返回true。因此您没有遵守规则。标准库的实现通过抛出异常来响应 请允许我问一下,当你最多需要4个文件时,为什么要包括所有这些文件?@Mahmoud Arafa This condition abs(I-j)“= -1总是等于true,不依赖于比较的值。”:“BoGrad简单地说他没有时间包括所有的C++头。”:如果你考虑每个数字比每个数字小,你会得到什么结果?我得到了,但是我试着修改函数,以便它能提供严格的弱排序,但是我不能。有什么帮助吗?@马哈茂达法拉有你吗?我试过了吗?如果你有不同的要求,但你不能设法使它们发挥作用,你可以在不同的问题上发表你的确切努力。
#include <algorithm>
#include <bitset>
#include <climits>
#include <cmath>
#include <cstdio>
#include <cstring>
#include <ctime>
#include <deque>
#include <functional>
#include <iomanip>
#include <iostream>
#include <list>
#include <map>
#include <queue>
#include <set>
#include <sstream>
#include <stack>
#include <string>
#include <vector>
using namespace std;
bool fun(int i, int j){
return abs(i - j) != -1;
}
int main(){
vector <int> v = { 1, 2, 3, 4, 5 };
sort(v.begin(), v.end(), fun);
for (int i = 0; i < v.size(); i++)
cout << v[i] << " ";
cout << endl;
return 0;
}
bool fun(int i, int j)
{
return i < j;
}
sort(v.begin(), v.end(), std::less<int>());