public void Collections_List_Insert() { ReadList.AssertEmpty(); var item1 = CreateItem1(); var item2 = CreateItem2(); WriteList.Add(item1); WriteList.Insert(0, item2); ReadList.AssertSequence(item2, item1); }
public void Collections_List_Order() { var item1 = CreateItem1(); var item2 = CreateItem2(); WriteList.Add(item1); WriteList.Add(item2); Assert.AreEqual(item1, ReadList[0]); Assert.AreEqual(item2, ReadList[1]); ReadList.AssertSequence(item1, item2); }
public void Collections_List_IndexOf() { var item1 = CreateItem1(); var item2 = CreateItem2(); var item3 = CreateItem3(); WriteList.Add(item1); WriteList.Add(item2); Assert.AreEqual(0, ReadList.IndexOf(item1)); Assert.AreEqual(1, ReadList.IndexOf(item2)); Assert.AreEqual(-1, ReadList.IndexOf(item3)); }
public void Collections_List_SetItem() { var item1 = CreateItem1(); var item2 = CreateItem2(); var item3 = CreateItem3(); WriteList.Add(item1); WriteList.Add(item2); WriteList[1] = item3; Assert.AreEqual(item1, ReadList[0]); Assert.AreEqual(item3, ReadList[1]); Assert.IsFalse(ReadList.Contains(item2)); ReadList.AssertSequence(item1, item3); }
public static int Compute(List <int> l, int friendindex) { bool flag = false; int n = 0; Console.WriteLine("проверяем нужны ли билеты другу вообще"); if (l[friendindex] == 0) { flag = true; Console.WriteLine("нет не нужны"); } Console.WriteLine("нужны,чекаем есть ли в очереди нули"); if (flag == false) { for (int i = 0; i < l.Count; i++) { if (l[i] == 0) { Console.WriteLine("есть прохожий,удаляем его"); l.RemoveAt(i); if (i < friendindex) { friendindex--; } i--; Console.WriteLine("Индекс друга" + friendindex); } } Console.WriteLine("Нулей нет"); while (l[0] != 1 | friendindex != 0) { if (l[0] == 1) { l.RemoveAt(0); friendindex--; n++; WriteList.Write(l); } else { if (friendindex == 0) { l = ShiftingList.ShiftList(l); l[l.Count - 1] -= 1; friendindex = l.Count - 1; n++; WriteList.Write(l); } else { l = ShiftingList.ShiftList(l); l[l.Count - 1] -= 1; friendindex--; n++; WriteList.Write(l); } } } } return(n + 1); }
/// <summary> /// 异步写入多点 /// </summary> /// <param name="Value"></param> /// <param name="Start"></param> /// <param name="End"></param> /// <param name="T"></param> public WriteInvoke(List <object> Value, int Start, int End, Type T) { ListValue = new WriteList(Value, Start, End, T); }