K12教育赛事综合服务平台
聚乐之家官方网站
下载聚乐之家官方App
专注青少年竞赛题库网站
我们定义了如下自定义结构体:
struct Product { std::string name; double price; int stock; };
现在需要将Product数组按照price从高到低降序排序,若两个元素的price相同,则按照stock从低到高升序排序,以下哪个比较函数可以正确实现该需求?
price从高到低降序
stock从低到高升序
bool compare(const Product& a, const Product& b) { return a.price > b.price || a.stock < b.stock; }
bool compare(const Product& a, const Product& b) { if (a.price != b.price) { return a.price > b.price; } return a.stock < b.stock; }
bool compare(const Product& a, const Product& b) { return a.price < b.price && a.stock < b.stock; }
bool compare(const Product& a, b) { return a.price > b.price && a.stock < b.stock; }