Algorithm 将数组的所有元素复制到指定索引处的另一个数组

Algorithm 将数组的所有元素复制到指定索引处的另一个数组,algorithm,pseudocode,Algorithm,Pseudocode,我想将数组的所有元素复制到指定位置的另一个元素 例如: 我的首选编程语言是Java或C 我的try的伪代码: //将第一个数组的所有元素复制到输出数组,直到索引 //将“a”复制到输出数组中 for(int i=0;ipublic Array getcomposition(int索引,数组array1,数组array2) { Array returnThis=新数组[array1.length+array2.length]; 对于(int i=0;i

我想将数组的所有元素复制到指定位置的另一个元素

例如:

我的首选编程语言是
Java
C

我的try的伪代码:

//将第一个数组的所有元素复制到输出数组,直到索引 //将“a”复制到输出数组中

for(int i=0;i
public Array getcomposition(int索引,数组array1,数组array2)
{
Array returnThis=新数组[array1.length+array2.length];
对于(int i=0;i
您只需仔细考虑起始索引和结束索引需要是什么。
我在下面附上了一些评论

//这部分很简单
对于(int i=0;i

因为我们只接触A和B的每个元素一次,所以它是
O(n)
,但最好说它是
O(m+n)
,其中
m
n
分别是A和B的长度。

@downvoter:您能指出问题所在吗?如果有,我可以更正。@RomanVottner:我不想使用内部功能。(请看问题的最后几行)我正在努力学习他们是如何做到的?试图提高编程技能。我担心上述算法是否为O(n次方3)。不,只有当它有三个
for loops
嵌入时,它才是O(n次方3)。正如你所说,这里是O(n+m)。很酷。谢谢。
Array A contains {'a', 'b', 'c', 'd'}

Array B contains {'x','y', 'z'}

Array C should now contain {'a', 'x', 'y', 'z', 'b', 'c', 'd'} when `insert-index`  is 1 (insert all B's at first index of A)
for(int i=0;i<insert-index;i++)
output[i] = A[i] 
for(int i=0;i<B.Array.Length;i++)
output[i] = B[i]
for(int i=0;i<A.Array.Length-index;i++)
output[i]=A[i]
public Array getCombination(int index, Array array1, Array array2)
{
  Array returnThis = new Array[array1.length + array2.length];
  for (int i = 0; i < index; i++)
  {
    returnThis[i] = array1[i];
  }

  for (int i = 0; i < array2.length; i++)
  {
    returnThis[i + index] = array2[i];     
  }

  for (int i = index; i < array1.length; i++)
  {
    returnThis[i + array2.length] = array1[i];
  }

  return returnThis;
}