static void PrintStaticLink(StaticLink <int> s, string text = "输出:") { int data = 0; Console.Write(text); for (int i = 0; i < s.GetStaticLinkLength(); i++) { s.GetElement(i + 1, ref data); Console.Write(data.ToString() + " "); } Console.WriteLine(); }
static void TestStaticLink() { int element = 0; //添加与加满测试 StaticLink <int> s = new StaticLink <int>(3); s.Add(2); s.AddQuick(3); s.Add(5); PrintStaticLink(s, "加满三个元素后:"); s.AddQuick(6); PrintStaticLink(s, "在往满的链表中添加元素:"); Console.WriteLine(); //删除元素测试 PrintStaticLink(s, "删除元素前:"); s.Delete(2, ref element); PrintStaticLink(s, "删除第二个元素后:"); s.Delete(1, ref element); PrintStaticLink(s, "再删除第一个元素后:"); Console.WriteLine(); //插入元素测试 PrintStaticLink(s, "插入元素之前:"); s.Insert(1, 100); PrintStaticLink(s, "在一号前插入100后:"); s.Insert(2, 200); PrintStaticLink(s, "在二号位插入200后:"); s.Insert(3, 20); PrintStaticLink(s, "往已满链表插入元素:"); Console.WriteLine(); //索引测试 s.Insert(5, 2); s.Delete(-1, ref element); s.Delete(100, ref element); s.Insert(-2, 3); s.GetElement(100, ref element); }