内容纲要

封装链表

增加节点

逻辑
首先找到位置
然后处理增加操作
先将要增加的节点的指针域指向后面的节点
之后将前一个节点的指针域指向要增加的节点
这样就完成了增加操作
增加在尾部也是同样的操作

增加在头部,只要将要增加的节点的指针域指向原头节点,然后将头节点设置成这个要增加的节点就可以了

删除

逻辑
在要删除节点的前一个节点的指针域指向要删除节点的下一个就好
前一个指向后一个
删头节点只要将头节点设置成原节点的下一个节点

            public void Delete(int i)
            {
                if (i < 0)//越界异常
                {
                    throw new IndexOutOfRangeException();
                }
                if (i == 0)//删头
                {
                    head = head.next;
                    return;
                }
                int count = 0;
                for (Node p = head; p.next != null; p = p.next)//删中间
                {
                     if(count==i-1)
                    {
                        p.next = p.next.next;

                    }
                    count++;
                }
                throw new IndexOutOfRangeException();//越界异常
            }

发表评论