gpt4 book ai didi

c++ - 移动指定索引处的数组元素

转载 作者:行者123 更新时间:2023-11-28 02:45:37 26 4
gpt4 key购买 nike

将指定索引处的数组元素左右移动一个位置的最有效算法是什么?

例如,将 [a,b,c,d,e,f] 的索引 [1,3,5] 向左移动以获得 [b,a,d,c,f,e]

如果新索引超出范围,我不希望它旋转,如果这有意义的话。

我正在使用 C++ std::vector 进行数组存储。

最佳答案

我将您的问题解释为根据索引交换数组的两个相邻条目。如果这是错误的,那么请用一个不正确的例子来澄清你的问题。

void swapElements(const std::vector<int>& indexes, std::vector<int>& array){
for(auto i : indexes){
if (i < 1 || i >= array.size()){
continue;
}
std::swap(array[i-1], array[i]):
}
}

关于c++ - 移动指定索引处的数组元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24539374/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com