问题描述
请问C#中如何写出插入数据算法? 不需要排序,只要在数组中插入数据,并使所有后续数值后移。这种算法该怎么写?
问题解答
回答1:那别用数组了,用链表结构,类里面有自己类型的对象,指向下一个,上一个,链表算法搜一下吧,c#版的很多。
回答2:https://msdn.microsoft.com/en-us/library/he2s3bh7(v=vs.110).aspx
题主想太多了,链表类.net里面是现成的。
回答3:数组大小不可变啊
public int[] InserFunction(int[] inarr, int data, int position){ int[] outarr = new int[inarr.Length + 1]; outarr[inarr.Length] = data; for (int ini = 0; ini < inarr.Length; ++ini) outarr[ini] = inarr[ini]; for (int i = inarr.Length; i > position; --i) {int ex = outarr[i];outarr[i] = outarr[i - 1];outarr[i - 1] = ex; } return outarr;}回答4:
用 LinkedList, 有一个 AddFirst() 方法可以添加到列表头部。