一步一步写算法(之双向链表)

发布时间:2021-06-07

软件英才网 软件行业驰名招聘网站

一步一步写算法(之双向链表)

前面的博客我们介绍了单向链表。那么我们今天介绍的双向链表,顾名思义,就是数据本身具备了左边和右边的双向指针。双向链表相比较单向链表,主要有下面几个特点:

(1)在数据结构中具有双向指针

(2)插入数据的时候需要考虑前后的方向的操作

(3)同样,删除数据的是有也需要考虑前后方向的操作

那么,一个非循环的双向链表操作应该是怎么样的呢?我们可以自己尝试一下:

(1)定义双向链表的基本结构

typedef struct _DOUBLE_LINK_NODE { int data; struct _DOUBLE_LINK_NODE* prev; struct _DOUBLE_LINK_NODE* next; }DOUBLE_LINK_NODE;

(2)创建双向链表节点

DOUBLE_LINK_NODE* create_double_link_node(int value) { DOUBLE_LINK_NODE* pDLinkNode = NULL;

pDLinkNode = (DOUBLE_LINK_NODE*)malloc(sizeof(DOUBLE_LINK_NODE)); assert(NULL != pDLinkNode);

memset(pDLinkNode, 0, sizeof(DOUBLE_LINK_NODE));

pDLinkNode->data = value;

return pDLinkNode;

}

(3)删除双向链表

void delete_all_double_link_node(DOUBLE_LINK_NODE** pDLinkNode)

{

DOUBLE_LINK_NODE* pNode;

if(NULL == *pDLinkNode)

return ;

pNode = *pDLinkNode;

一步一步写算法(之双向链表).doc 将本文的Word文档下载到电脑

精彩图片

热门精选

大家正在看

× 游客快捷下载通道(下载后可以自由复制和排版)

限时特价:7 元/份 原价:20元

支付方式:

开通VIP包月会员 特价:29元/月

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信:fanwen365 QQ:370150219