我正在实现原地归并排序算法,因此需要更新向量容器元素而不创建新的容器。我正在迭代容器,并且没有将向量容器作为参数传递。我只传递了目标容器的迭代器。
我的问题是:“如何仅通过向量容器的迭代器更新或替换向量容器元素?”
以下是我的部分代码。
template<typename T>
void it_practice(T begin, T end) {
for(T it = begin; it != end; ++it)
{
if (R_half[j] >= L_half[i])
{
*it = L_half[i];
i++;
}
else
{
*it = R_half[j];
j++;
}
}