Unity - A计划(永久有效期) 扫二维码继续学习 二维码时效为半小时

(196评价)
价格: 4069.00元
数据结构 链栈
张同学斯基发起了问答2017-02-11
4
回复
494
浏览
 public void Push(T item)
        {
            Node<T> newNode=new Node<T>(item);
            if (top==null)
            {
                top = newNode;
            }
            else
            {
                newNode.Nxet = top;
                top = newNode;
                count++;
            }
        }
  public void Show()
      {
          Node<T> dataNode = top;
          while (top!=null)
          {
              Console.WriteLine(top.Data);
              top = top.Nxet;
          }
      }

第一个压入数据,。newNode.Next=top。第二个遍历数据top=top.Next怎么理解?

Push方法中   newNode.Next = top;
              top = newNode;     这两段代码逻辑顺序是怎么理思路的?

所有回复
  • siki 2017-02-11

    top.next 是指向下面的元素,输出当前元素了,让top等于它的下一个元素,下一次就输出下一个元素了,然后再执行下下一个元素

    • 张同学斯基 2017-02-12

      老师我这么理解可以不。遍历时,输出的是top.Data。所以每循环一次,都要改变top,所以就是top=top.Next。但是压入数据时 newNode.Nxet = top;
      top = newNode; 这两句是怎么理解的。

      (0) 回复
    还有-4条回复,点击查看
    你还没有登录,请先登录注册
  • 张同学斯基 2017-02-12

    把newNode作为新的头结点top,所以把nweNode.next指向原来的节点,以建立起链条链接,然后把top更新为newNode。nweNode.next=top中的top指的是top指向的节点,第二句top=newNode中top是栈顶指示器。对不对?

    • siki 2017-02-12

      恩恩 是的 让新来的节点作为头节点,然后重新让top指向这个新来的 节点

      (0) 回复
    还有-4条回复,点击查看
    你还没有登录,请先登录注册
发表回复
你还没有登录,请先 登录或 注册!