-4

所以我正在尝试学习算法效率。我知道如何从数组中删除一个元素,但不确定如何在两个索引之间删除。让我们假设 list = {1,2,3,4,5,6,7,8,9,10}, 并且我们用参数调用该removeBetween方法: removeBetween(2, 6);

public void removeBetween(int FirstIndex, int LastIndex)
{


}
4

2 回答 2

2

您可以遵循的一般算法方向:

要删除 2 个给定索引之间的所有数字,例如 (FirstIndex, LastIndex):

  • 将索引 0 到 FirstIndex 的所有元素复制到result数组。

  • 接下来将所有元素从 LastIndex 复制到 Array.lenght()-1 索引到result上面的同一个数组。

返回result

于 2013-10-15T17:15:12.663 回答
0

因此,如果您将项目放在数组列表中,则可以执行以下操作:

ArrayList<Whatever object is> newElements = yourlist.sublist( 0, firstIndex );
newElements.addAll( yourlist.subList( LastIndex + 1, yourlist.size() ) ; 
于 2013-10-15T17:16:53.207 回答