删除 2 个给定索引之间的元素的最佳算法
Best algorithm to remove elements between 2 given indices
所以我正在尝试学习算法效率。我知道如何从数组中删除一个元素,但不确定如何在两个索引之间删除。让我们假装 list = {1,2,3,4,5,6,7,8,9,10}
,我们用参数调用removeBetween
方法: removeBetween(2, 6);
public void removeBetween(int FirstIndex, int LastIndex)
{
}
您可以
遵循的一般算法方向:
要删除 2 个给定索引之间的所有数字,例如 (FirstIndex, LastIndex):
将所有元素从索引 0 复制到 FirstIndex 到
result
数组。接下来,将所有元素从 LastIndex 复制到 Array.lenght()-1 索引到上面的同一
result
数组。
返回result
.
所以如果你的项目在数组列表中,你可以做如下的事情:
ArrayList<Whatever object is> newElements = yourlist.sublist( 0, firstIndex );
newElements.addAll( yourlist.subList( LastIndex + 1, yourlist.size() ) ;
相关文章:
- 从嵌套在std::映射中的std::列表中删除元素的最佳方式
- 复制包含C++所有元素的对象!(构造函数和赋值,最佳实践?
- 在向量中查找大于 0(或通常为 k)的最小元素的最佳方法是什么?
- C++将所有元素从矢量复制到地图/unordered_map的最佳方法
- 打印所有儿童树元素的最佳算法?
- 对列表列表中的元素进行分组的最佳方式
- 查找字符串是否包含字符串向量的任何一个元素的最佳方法
- 将结构的所有元素归零的最佳方法
- 遍历 STL 映射(集/多集)的最佳方法,同时元素可能会在循环期间被删除并重新插入?
- 使用其范围版本从容器中删除元素的最佳方法
- 用于随机访问和元素循环的最佳数据结构(C++)
- 查找矩阵中只有'0'元素的第一行的最佳方法?
- 为具有可变元素(C++)的优先级队列确定最佳ADT
- 创建 1 个元素集的最佳最简单最快方法是什么?(C++)
- 找到组合对之间共享元素的最佳方式
- 在运行时按索引访问 std::tuple 元素的最佳方法
- 找出所有给定数组中公共元素的最佳算法
- 从向量中获取n个最佳元素
- 在转换一个向量的元素时,连接两个向量的最佳方式是什么
- 用于有序元素的最佳容器