Exemplo n.º 1
0
        public SingleLinkNode Revert2()
        {
            SingleLinkNode p = this;

            if (p.Next != null)
            {
                SingleLinkNode pNext = p.Next;

                SingleLinkNode newHead = pNext.Revert2();

                pNext.Next = this;
                this.Next  = null;

                return(newHead);
            }

            return(p);
        }
Exemplo n.º 2
0
        static void Main(string[] args)
        {
            SingleLinkNode linkNode = new SingleLinkNode(3);

            linkNode.Insert(8);
            linkNode.Insert(6);
            linkNode.Insert(5);
            linkNode.Insert(10);
            SingleLinkNode result = linkNode.Insert(2);

            // 2-3-5-6-8-10

            //SingleLinkNode jiHead = null;
            //SingleLinkNode ouHead = null;

            //result.Split(out jiHead, out ouHead);

            //SingleLinkNode revertLink = result.Revert();
            SingleLinkNode revertLink = result.Revert2();
        }