
数据结构
IronBull_Zhang
本博客做备份代码所用
展开
-
数据结构 | C++ | 线性表的基本操作
重写一遍代码,温故而知新.结点类型全部是"训练笔记"类,为以后做准备.数据套格式函数void MakeData(ListNode data),应用在main()里而非.h头文件里.在头文件里,数据以节点结构体ListNode 的形式在各个函数中传递、流通. 在main()调用时套个壳子,显示出来.1.顺序表的头文件://结点类struct ListNod...原创 2019-03-23 11:36:28 · 801 阅读 · 0 评论 -
数据结构 | C++ |链表的基本操作
关于构造函数顺序存储结构的构造函数:要创建一个空数组,最大尺寸为MAXSIZE,并设置一个length变量表示数组的实际长度链式存储结构的构造函数:要让elem (链表)/top (链栈)/rear&front (链队)/root (树) = nullptr1.LinkList.h文件//节点类class Node {public: string ActN...原创 2019-04-07 12:22:04 · 347 阅读 · 0 评论 -
数据结构 | C++ |栈和队列的基本操作
本文只涉及链栈和链队列1.栈由于其只在栈顶出、入的特性,因此不需要空的头节点2.队列可以写或不写头节点,考虑到它和链表非常像,我还是愿意写上. 2.1链队和链表的共性与区别: 共性:队列的front指针==链表的elem指针,都指向头节点 区别:链队多了个一直指向队尾,不断因入队递增的rear指针实验要求:代码...原创 2019-04-11 17:52:55 · 574 阅读 · 0 评论 -
数据结构 | C++ |链表的其他操作
本文包括:链表的逆置 链表的排序 两个链表的合并 1.逆序//数组逆置void LinkList::Invert(){ //p起一个向导的作用,指引q依次前进 Node *p = elem->next; Node *q = nullptr; elem->next = nullptr; while (p != nullptr) { q =...原创 2019-04-13 12:31:26 · 167 阅读 · 0 评论 -
数据结构 | C++ |二叉树的链式操作
算法理解前序中序和后序的区别在于:前序(根-左-右)中序(左-根-右)后序(左-右-根)两种序列构造二叉树的算法划分集合->找根节点->划分集合......不停循环注意,划分集合时,至少有一个集合仅包含一个元素做根节点例:先序序列 :A B H F D E ...原创 2019-05-08 16:54:20 · 574 阅读 · 0 评论 -
数据结构 | C++ |线索二叉树
枚举枚举数据类型是一种由程序员定义的数据类型,其合法值是与它们关联的一组命名整数常量。0.关键词:enum(小写)1.实例:enum BiTHrNodeType { LINK,THREAD };创建了一个名为BiTHrNodeType的数据类型.默认情况下,第一个枚举量LINK是0,第二个枚举量THREAD是1,依此类推.2.创建变量BiTHrNod...原创 2019-05-12 22:47:58 · 347 阅读 · 0 评论 -
数据结构 | C++ 图的链式操作
模板的用法:在函数或类前template<class T>在函数体或类体中将需要的数据类型替换成T即可.在main()调用函数时,定义好实参的数据类型即可合法使用该函数.模板的意义在于不必写若干函数的重载.其中,模板声明中的"class"用"typename"更合适,'T'也可用任意字符代替template<typename T>ALGrap...原创 2019-05-26 16:21:17 · 358 阅读 · 0 评论 -
数据结构 | C++ | 快排和折半查找后插入
顺序表:0.头文件using namespace std;#include <iostream>#include<string>#include<vector>1.结点类和顺序表类:vector的好处就是析构函数只要:s.clear();//结点类struct Student{ int score; string n...原创 2019-06-01 23:56:07 · 335 阅读 · 0 评论