public void Append(T item) { if (Size == _box.Size * _line) { _box.Append(new VectorArray <T>(_line)); } _box.Get(Size / _line).Append(item); Size++; }
public void Set(T v) { int index = mData.IndexOf(v); if (index != -1) { //找到元素 mData.Delete(index, out _); mData.Append(v); } else { //添加数据 if (mData.IsFull()) { mData.Delete(0, out _); } mData.Append(v); } }
public void Enqueue(uint priority, T item) { Size++; if (priority + 1 > _box.Size) { for (var i = _box.Size; i <= priority; i++) { _box.Append(new FactorArray <T>()); } } _box.Get((int)priority).Append(item); }
static void TestArray() { Comparison <int> comparison = delegate(int a, int b) { if (a > b) { return(1); } else if (a == b) { return(0); } else { return(-1); } }; SortArray <int> sortArray = new SortArray <int>(2); sortArray.Comparer = comparison; //IArray<int> array = new VariableArray<int>(2); IArray <int> array = sortArray; array.Append(10); Console.WriteLine(array); array.Append(22); Console.WriteLine(array); array.Append(32); Console.WriteLine(array); array.Append(4); Console.WriteLine(array); array.Append(51); Console.WriteLine(array); array.Append(6); Console.WriteLine(array); Console.WriteLine(array.IndexOf(4)); SortArray <int> sortArray2 = new SortArray <int>(2); sortArray2.Comparer = comparison; sortArray2.Append(100); sortArray2.Append(200); sortArray2.Append(102); sortArray2.Append(300); sortArray2.Append(160); sortArray2.Append(150); Console.WriteLine(sortArray2); sortArray2.Merge(array as SortArray <int>); Console.WriteLine(sortArray2); }
static void TestLinkedList() { Comparison <int> comparison = delegate(int a, int b) { if (a > b) { return(1); } else if (a == b) { return(0); } else { return(-1); } }; SingleLinkedList <int> linkedList = new SingleLinkedList <int>(); IArray <int> array = linkedList; array.Append(10); Console.WriteLine(array); array.Append(22); Console.WriteLine(array); array.Append(32); Console.WriteLine(array); array.Append(4); Console.WriteLine(array); array.Append(51); Console.WriteLine(array); array.Append(6); Console.WriteLine(array); Console.WriteLine(array.IndexOf(4)); Console.WriteLine(array[0]); Console.WriteLine(array[1]); Console.WriteLine(array[2]); Console.WriteLine(array[3]); Console.WriteLine(array[4]); Console.WriteLine(array[5]); Console.WriteLine(array[6]); }