【发布时间】:2017-11-09 07:17:40
【问题描述】:
我想在我已经排序的向量中插入一个元素,当它再次排序时,它将被放置在它的排序位置。 有一个名为 sort() 的函数用于对数组进行排序。如何使用相同的函数对向量进行排序? 这是我的代码。它给了我编译错误。
//assume g1 is already sorted with some numbers
int x;
cin >> x;
g1.push_back(x);
int s = g1.size()/g1.at(g1.begin());
//similar to int s = arr/arr[0]
sort(g1 + s,g1);
【问题讨论】:
-
int s=g1.size()/g1.at(g1.begin());尝试做什么? -
@RajatSingh 每个人都在告诉你阅读
std::sort的文档。它包含一个按降序排序的示例!已提供多个链接。 -
推送后排序的替代方法,您可以将值插入正确的位置
g1.insert( std::upper_bound( g1.begin(), g1.end(), x), x );。 -
@Rajat "as im new to vectors" 好吧,如果您遇到新事物,请先阅读文档,然后再在这里询问琐事。