【发布时间】:2017-11-19 18:28:51
【问题描述】:
我正在尝试编写自己的反向算法来反转元素序列的顺序。我只使用“第一个”和“限制”,这就是所有函数都将作为参数。是否可以编写一个函数来反转元素序列的顺序,其中第一个是最后一个,第二个是倒数第二个......等等。我试图不使用临时向量来存储元素。这可能吗?如果我的问题有什么不清楚的地方,请告诉我。 谢谢! 我正在使用c ++ 11,这是我到目前为止所拥有的......不多。如果我不想使用临时向量,我真的不知道该使用什么逻辑。
template<typename Iter>
void reverse(Iter first, Iter last)
{
}
int main()
{
std::vector<int> vector = {1,2,3,4,5};
std::cout << reverse(vector.begin(),vector.end());
}
【问题讨论】:
-
到目前为止您尝试过什么,我们在谈论哪种编程语言?
-
我已将其添加到顶部的问题中,很抱歉造成混淆。
-
在初始化为0的函数中使用临时变量。交换第一个最后一个迭代器元素,然后在第一个和最后一个位置加1和减1,以指向倒数第二个元素并继续交换直到左
标签: c++ algorithm vector reverse