小编朱嘉诚*_*朱嘉诚的帖子

C#内存分配和链接列表实现

我对C#如何实现链表类的第一个问题有一些疑问:

public class Node {  
    int data;  
    Node next;   
} 
Run Code Online (Sandbox Code Playgroud)

它看起来像是一个而不是一个链表,它是一个Big对象,里面有递归的同类

我的第二个问题更具体,对于一个简单的反向链表算法,如下所示:

 public void ReverseList(ref ListNode head){
    if(head ==null || head.next == null) return head;
    ListNode cur = head;
    ListNode prev = null;
    ListNode next = head.next;
    while (cur != null){
        ListNode nextNode = head.next;
        cur.next= prev;
        prev=cur;
        cur=nextNode;
    }
    head = prev ;
} 
Run Code Online (Sandbox Code Playgroud)

是不是cur = head意味着"cur"复制所有链表元素?并且很难想象算法中发生了什么.

c# memory algorithm memory-management linked-list

2
推荐指数
1
解决办法
351
查看次数

标签 统计

algorithm ×1

c# ×1

linked-list ×1

memory ×1

memory-management ×1