首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >C/C++中的双链表与多链表

C/C++中的双链表与多链表
EN

Stack Overflow用户
提问于 2014-04-02 10:34:34
回答 4查看 20.1K关注 0票数 2

双链表和多链表有什么区别?用C/C++程序来解释我会更好。

EN

回答 4

Stack Overflow用户

回答已采纳

发布于 2014-04-02 10:40:29

定义

多链接列表是链接列表,其中每个节点可能包含指向链接列表的多个节点的指针。

双链表是多重链表的特例.它有两方面的特殊:

  1. 每个节点只有2个指针。
  2. 指针是彼此的精确逆词。

示例

多链接列表:

双重链接的清单:

Representation

多链接列表:

代码语言:javascript
运行
复制
typedef struct node
{
    int data;
    vector<struct node *> pointers;
}Node;

双链接列表:

代码语言:javascript
运行
复制
typedef struct node
{
    int data;
    struct node* prev;
    struct node* next;
}Node;
票数 13
EN

Stack Overflow用户

发布于 2014-04-02 10:42:38

双链接列表是指每个节点将有两个指针,一个指向它之前的节点,另一个指针指向该节点之后的节点。

在多链接列表中,将有多个指针,每个指针根据某些条件对节点进行排序。

不同的是,在一个双链接列表中,我们可以在两个方向遍历列表,但是它被命令形成1列表,即one ordering of nodes。就像在多链接列表中一样,其中可以有multiple ordering of nodes。每个指针可以根据不同的条件对列表进行排序,并在使用该指针遍历列表时形成不同的列表。

阅读以了解多链接是如何根据用于遍历列表的指针在多链接列表中得到不同顺序的。

票数 0
EN

Stack Overflow用户

发布于 2014-04-02 10:44:07

双链接列表将元素向前链接,并反向排列。

多链接列表以几种不同的方式链接元素,它们之间没有关联。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/22808713

复制
相关文章

相似问题

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