首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >在双向链表上进行操作时,您应该记住什么?

在双向链表上进行操作时,您应该记住什么?
EN

Stack Overflow用户
提问于 2015-12-05 04:39:54
回答 3查看 448关注 0票数 0

例如,我的讲师说过,在使用链表进行操作时,不要释放任何内存,并删除指针。此外,他说,在对双向链表进行操作时,应该确保边缘情况是正确的。有没有人可以对此进行扩展?我不确定我完全明白他的意思。

例如,这是我们正在处理的链表类型:

代码语言:javascript
运行
复制
 struct Node {
        Node *next;
        Node *prev;
        T datum;
    };

Node *first;   // points to first Node in list, or 0 if list is empty
Node *last;    // points to last Node in list, or 0 if list is empty
EN

Stack Overflow用户

发布于 2015-12-05 04:45:12

在处理指针时,您总是希望确保delete任何不再使用的new对象。这样就不会有任何内存泄漏了。

边缘条件是,例如,当插入元素时,它是否适用于空列表,当项目将作为第一个元素插入时,作为最后一个元素插入时?通常,在实现insert时,我们对典型元素(即现有列表中间的元素)执行逻辑。但它应该适用于所有情况。我提到的情况可以被认为是边缘条件,并且必须考虑到您想要为列表实现的每个操作。

票数 3
EN
查看全部 3 条回答
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/34097032

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档