博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
一个建立双向循环链表的例子
阅读量:4041 次
发布时间:2019-05-24

本文共 465 字,大约阅读时间需要 1 分钟。

struct Node *g_pstNodeHead = NULL;/* 此为全局变量 */
 
int func(struct Node *pstCurNode)
{
    struct Node *pstNode = pstCurNode;
    if (pstNode)
    {
        if (g_pstNodeHead == NULL)
        {
            pstNode->next = pstNode->prev = pstNode;
            g_pstNodeHead = pstNode;
        }
        else
        {
            /* 注意,以下顺序不能颠倒 */
           
            /* 建立顺序循环 */
            g_pstNodeHead->prev->next = pstNode;
            pstNode->next = g_pstNodeHead;
            /* 建立逆序循环 */
            pstNode->prev = g_pstNodeHead->prev;
            g_pstNodeHead->prev = pstNode;
        }
    }
    else
    {
        printf("NULL para \n");
    }
    return 0;
}

转载地址:http://mtldi.baihongyu.com/

你可能感兴趣的文章
layui插件的使用
查看>>
JS牛客网编译环境的使用
查看>>
9、VUE面经
查看>>
关于进制转换的具体实现代码
查看>>
Golang 数据可视化利器 go-echarts ,实际使用
查看>>
mysql 跨机器查询,使用dblink
查看>>
mysql5.6.34 升级到mysql5.7.32
查看>>
dba 常用查询
查看>>
Oracle 异机恢复
查看>>
Oracle 12C DG 搭建(RAC-RAC/RAC-单机)
查看>>
Truncate 表之恢复
查看>>
Oracle DG failover 后恢复
查看>>
mysql 主从同步配置
查看>>
为什么很多程序员都选择跳槽?
查看>>
mongdb介绍
查看>>
mongdb安装使用
查看>>
mongdb在java中的应用
查看>>
mongodb与spring集成
查看>>
1060. Are They Equal (25)
查看>>
1020. Tree Traversals (25)
查看>>