遍历链表: while(ptr!=NULL) vs while(ptr->next!=NULL)?



定义存储单元

struct node {
    int item;
    node *next;
};

假设ptr指向链表,那么将while(ptr!=NULL)while(ptr->next!=NULL)放在列表中循环直到到达空指针之间是否有区别?

while(ptr->next!=NULL)不会遍历你的最后一个节点。

当你到达最后一个节点时,ptr->next将为空,它将退出while循环

while(ptr->next != NULL)跳过最后一个元素时,while(ptr != NULL)将遍历所有链表。

例如,当您

想要访问最后一个节点以在列表末尾添加新元素时,第二种解决方案很有用。

相关内容

  • 没有找到相关文章

最新更新