数据结构----链表的删除和遍历(2018/10/24)

构造函数的书写和具体的实现在昨天的(数据结构----链表的增和插入(2018/10/23))已经写过;

删除:

 1 public int  RemoveAt( int indexOf)
 2         {
 3             int deleteDate=default(int);
 4             if (indexOf >= _count || indexOf < 0)
 5             {
 6                 Console.WriteLine("出错!!!");
 7                 goto xt;
 8             }
 9             node temp = _head;
10             for (int i = 0; i < indexOf; i++)
11             {
12                 temp = temp.Next;
13             }
//现在temp为indexof前一个节点
14 node tibuNode = temp.Next;
//连接链,关键操作!!!!!!
15 temp.Next = temp.Next.Next;
//将下标为indexof的节点连接到null,很重要!!!!!!!
16 tibuNode.Next = null; 17 _count--; 18 return tibuNode.Date; 19 xt: 20 return deleteDate; 21 }

遍历:

 1 //定义:第一个int为下标,第二个int为节点的date 若改为泛型改第二个int为T
 2         public void ShowItem(Action<int,int> ac)
 3         {
 4             if (_count == 0)
 5             {
 6                 Console.WriteLine("null");
 7                 return;
 8             }
 9             node temp = _head;
10             for (int i = 0; i < _count; i++)
11             {              
12                 ac(i,temp.Date);
13                 temp = temp.Next;
14             }
15         }
16             //委托的方法
17         public static void Show(int m, int Date)
18         {
19             Console.WriteLine("第{0}个元素是{1}",m,Date);
20         }

注意: return 是返回方法,下面代码不再执行

break 是断开循环 

原文地址:https://www.cnblogs.com/Future-Better/p/9842734.html