哑结点,就是链表的根节点. 一般的, 单链表的插入要考虑空链表的处理, 但如果有哑结点, 就无需这样考虑.
那这样好吗?
如果这样,你需要保证进入插入函数前, 单链表有哑结点, 所以你需要创建, 而且每次操作单链表需要跳过哑结点. 也就是说, 增加哑结点并没有减少特殊情况的处理, 相反, 这些处理分散到其他函数里. 我认为, 为了提高模块的独立性, 应该把空链表处理补上.
时间: 2024-12-20 18:19:59
哑结点,就是链表的根节点. 一般的, 单链表的插入要考虑空链表的处理, 但如果有哑结点, 就无需这样考虑.
那这样好吗?
如果这样,你需要保证进入插入函数前, 单链表有哑结点, 所以你需要创建, 而且每次操作单链表需要跳过哑结点. 也就是说, 增加哑结点并没有减少特殊情况的处理, 相反, 这些处理分散到其他函数里. 我认为, 为了提高模块的独立性, 应该把空链表处理补上.