传递一个向量作为递归函数的引用
Passing a vector as a reference to a recursive function
我已经构建了一个函数,它接受对vector的引用作为参数,它看起来像这样:
void func(std::vector<int> &vec) {
// sth. to do
}
但是我希望这个函数是递归的,并且用原向量的一部分调用自己。
void func(std::vector<int> &vec) {
// sth. to do
func(part of the orignial vector);
}
我如何从原来的向量构造一个新的向量?重要的是,当我在递归调用中修改向量的部分时,原始向量"vec"也发生了这种变化,所以我不想传递一个副本或新向量。谢谢你的帮助。
老方法!
void func(std::vector<int> &vec,int l,int r) {
// this function modifies only vec fro indices l to r.
//
// do what you want
//
//
func(vec,new_l,new_r);
}
相关文章:
- 递归函数计算序列中的平方和(并输出过程)
- 如何在Elixir中调用递归函数并行
- 递归函数有效,但无法记忆
- 为什么我的递归函数按降序打印,然后按升序打印?
- 为什么递归函数的最终输出是 5?
- 有没有办法使用递归函数找到数组中最小值的 INDEX?C++
- 如何将记忆应用于此递归函数?
- 如何从递归函数中完全返回,该函数给出了每个函数结果的累积相加?
- 无穷大而循环时具有递归函数
- 即使没有调用这个递归函数,它是如何工作的?
- 如何使此递归函数从给定的起始位置返回最小的整数?
- 此递归函数的每次迭代的值存储在哪里?
- C++ 引用类型作为递归函数参数
- 如何在递归函数中调用引用数组?
- 静态短引用在递归函数中产生错误
- 如何在 c++ 中将内置堆栈作为对递归函数的引用传递
- 通过引用传递递归函数
- 传递一个向量作为递归函数的引用
- 在递归函数中通过引用传递的数组 - 最后一列重新初始化
- 通过引用递归函数传递字符串或流对象时出现的段错误