双向链表的三种实现

这篇文章,其实很像是“茴字的四种写法”。这让人不由的想起来孔乙己。在我印象中,大多数人对孔乙己是持嘲讽态度的。 但是从技术上讲,我觉得”茴字的四种写法”在满足需求的前提下,有助于我们简化实现。 在我的历史经验中,我一共写过三种双向链表。 在最开始实现时,就是按算法导论最朴素的实现。 //算法1 struct node { struct node *prev; struct node *next; } struct node *head = NULL; void insert(struct node *n) { n->prev……