那我该怎么做呢我尝试了朋友函数,重载运算符,似乎无法完成。
class shop {
int price;
string name;
string model;
public:
shop () {
price =0;
name = " NULL" ;
model = " NULL " ;
}
shop ( string n , string m , int p ) {
name = n;
model = m;
price = p;
}
void display () {
cout<<"Name : " << name <<endl;
cout<<"Model : "<<model<<endl;
cout<<"Price : "<<price<<endl;
}
};
我该怎么按价格分类?
for ( int i = 1 ; i<=products ; i++) {
cin.ignore();
cout<<"Name "<< i << ": ";
getline(cin,n);
cout<<"Model "<< i << ": ";
cin>>m;
cout<<"Price "<< i << ": ";
cin>>p[i];
e[i] = new shop(n,m,p[i]);
}
我有一个向量,我试过排序。我不想做排序,因为我认为我没有正确地声明这个方法的向量。
2条答案
按热度按时间3phpmpom1#
如果你不想使用任何内置的排序函数,那么你必须手动实现它。
其复杂度为
O(N^2)
。当产品数量巨大时,需要花费大量的时间。你可以使用其他复杂度为O(Nlog(N))
的算法,如合并排序,快速排序等。让它更快unhi4e5o2#
这是一个使用2对向量进行排序的方法: