随笔分类 -  数据结构

摘要:一个100行的代码调试都可能会让程序员遇到很多挫折,所以,面对挫折,我们永远不能低头。 这段时间在代码随想录里学习了二叉树相关知识,并整理成c++代码(采用类的方式定义二叉树) 想掌握二叉树概念,可参考青岛大学王卓老师的课程、51CTO学院的鲍老师课程、代码随想录以及其他博客,建议详细阅读代码随想录 阅读全文
posted @ 2022-01-11 22:05 念经似的zzz 阅读(49) 评论(0) 推荐(0) 编辑
摘要:一、串结构的定义 字符串 char *str = "abcdef"; char str[7] = "abcdef" 空字符串 char *str = " "; char str[7] = " " 空串 char *str; str[0] = '\0'; 二、串结构之顺序存储实现 1、串头文件定义 # 阅读全文
posted @ 2021-05-05 15:07 念经似的zzz 阅读(167) 评论(0) 推荐(0) 编辑
摘要:以下内容只是学习记录: 一、定义 队列是一种先进先出的线性表。在表的一端进行插入(队尾),另一端删除元素(对头)实现形式有:顺序队列(顺序表实现)和链式队列(链式表实现) 二、代码编写 1、链队列实现: 结构体定义及功能函数声明: #ifndef __LINKQUEUE_H__ #define __ 阅读全文
posted @ 2021-05-03 13:41 念经似的zzz 阅读(102) 评论(0) 推荐(0) 编辑
摘要:一、定义 栈是限定在表尾进行插入或删除操作的线性表。因此对栈来说,表尾端有特殊含义,称为栈顶,相应地,表头端称为栈底。不含元素的空表称为空栈。 二、栈的实现方式 1、顺序栈 顺序存储结构,利用一组地址连续的存储单元依次存放自栈底到栈顶的数据元素,同时附设指针top指示栈顶元素在顺序栈中的位置。通常的 阅读全文
posted @ 2021-04-25 15:43 念经似的zzz 阅读(207) 评论(0) 推荐(0) 编辑
摘要:以下内容只是学习记录: 一、背景 之前讨论的链式存储结构的节点中只有一个指示直接后继的指针域,因此,从某个节点出发只能顺时针往后查找其他节点。若要查询节点的直接前驱,则需要从表头触发,若是单循环则需要查找一个周期,换句话说,在单链表中,NextElem的执行时间为O(1),而PriorElem的执行 阅读全文
posted @ 2021-04-22 21:47 念经似的zzz 阅读(123) 评论(0) 推荐(0) 编辑
摘要:一、定义 特点是表中最后一个节点的指针域指向头节点,整个链表形成一个单向环。由此,从表中任何一个节点出发均可找到表中其他节点。 循环链表的操作和线性链表的操作基本一致,差别仅在算法中的循环条件不是p或p->next是否为空,而是他们是否等于头指针 (a)非空表 (b)空表 二、代码实现 1、单循环链 阅读全文
posted @ 2021-04-20 15:55 念经似的zzz 阅读(676) 评论(0) 推荐(0) 编辑
摘要:恢复内容开始 静态链表的描述方法便于在不设“指针”类型的高级程序设计语言中使用链表结构,,用数组的一个分量表示一个节点,同时用游标代替指针,数组的第0分量看成是头节点,数组的第1个分量代表备用节点(称为备用池) 1、静态单链表结构体定义 开辟一个结构体类型数组,结构体成员包含data和cur, 数组 阅读全文
posted @ 2021-04-19 22:20 念经似的zzz 阅读(199) 评论(0) 推荐(0) 编辑
摘要:链式存储 阅读全文
posted @ 2021-04-16 13:02 念经似的zzz 阅读(498) 评论(0) 推荐(0) 编辑
摘要:数据结构 阅读全文
posted @ 2021-04-15 20:13 念经似的zzz 阅读(105) 评论(0) 推荐(0) 编辑