C/C++ DataStructure
C/C++数据结构
优秀的程序员不仅仅要精通编程语法
还要精通操作系统,熟悉各种协议
有着强有力的逻辑
更重要的是对数据结构和算法的深度了解
IT1995
每周个人笔记分享,欢迎广大网友查阅!
展开
-
C++笔记-二维棋盘数组使用BFS(宽度优先遍历)
这里只对一个顶点只能上下左右,不能和左上,左下,右上,右下连起来。思路步骤:1.二维棋盘数据转链接表;2.邻接表直接进行BFS源码如下:#include <QDebug>#include <QVector>#include <QQueue>#define MAX_COLUMN 6 + 2#define MAX_ROW 6 + 2//用-1包住,保证处理的统一int map1[MAX_ROW][MAX_COLUMN] = {原创 2021-06-29 08:49:35 · 653 阅读 · 0 评论 -
C++笔记-二维棋盘数组转邻接表(使用QTL)
使用这样的结构存储邻接表:QVector<QVector<Point>> m_adj;Point存储当前顶点号及X轴,Y轴:struct Point{ Point(int vNum, int x, int y) { this->vNum = vNum; this->x = x; this->y = y; } int vNum = -1; //顶点号 int x;原创 2021-06-29 08:47:55 · 513 阅读 · 1 评论 -
C++笔记-基于邻接矩阵的BFS(宽度优先遍历)
邻接表是是用一个二维链表,表示顶点和顶点相邻的节点。而邻接矩阵是,他的行,代表的是顶点,列也代表的顶点,如下:第0行:这是第0个顶点,他可以去第1个和第2个顶点;第1行:这是第1个顶点,他可以去第4个顶点;第2行:这是第2个顶点,他可以去第0个和第2和第3个顶点;第3行:这是第3个顶点,他可以去第0个和第4个顶点;第4行,这是第4个顶点,他一个顶点也不能走。思路BFS都一样,先选一个顶点,然后看他可以访问哪个顶点,然后依次访问:运行截图:先访问0这个顶点,在1,2原创 2021-06-29 08:43:23 · 1186 阅读 · 0 评论 -
C++笔记-基于邻接表的BFS(宽度优先遍历)
这里是基于邻接表的,有向的,具体代码如下:#include <iostream>#include <list>using namespace std;class Graph{ int V; list<int> *adj;public: Graph(int V); void addEdge(int v, int w); void BFS(int s);};Graph::Graph(int V){ this->V =原创 2021-06-29 08:42:09 · 507 阅读 · 0 评论 -
数据结构相关代码-简介
数据结构相关代码-简介原创 2017-12-17 13:17:11 · 4972 阅读 · 0 评论 -
数据结构-线性相关代码
数据结构-线性相关代码原创 2017-12-17 12:40:44 · 5042 阅读 · 0 评论 -
数据结构-图的进阶代码
数据结构-图的进阶代码原创 2017-12-17 12:33:18 · 5269 阅读 · 2 评论 -
数据结构-图的基础代码
数据结构-图的基础代码原创 2017-12-17 12:20:51 · 8860 阅读 · 2 评论 -
数据结构-树的进阶代码
数据结构-树的进阶代码原创 2017-12-17 11:17:32 · 5375 阅读 · 3 评论 -
数据结构-树的基础代码
数据结构-树的基础代码原创 2017-12-17 10:59:30 · 6547 阅读 · 4 评论 -
数据结构-排序进阶代码
数据结构-排序进阶代码原创 2017-12-17 10:53:00 · 4635 阅读 · 4 评论 -
数据结构-排序基础代码
数据结构-排序基础代码原创 2017-12-17 10:38:47 · 5314 阅读 · 3 评论 -
数据结构-存储结构
数据结构-存储结构原创 2017-12-17 10:29:39 · 6002 阅读 · 2 评论 -
2-3-4树和B树
2-3-4树和B树原创 2017-03-05 10:07:24 · 6674 阅读 · 5 评论 -
多路查找树之2-3树的删除原理
多路查找树之2-3树的删除原理原创 2017-03-05 09:34:21 · 5561 阅读 · 3 评论 -
多路查找树之2-3树的插入原理
多路查找树之2-3树的插入原理原创 2017-03-04 10:40:26 · 6230 阅读 · 2 评论 -
多路查找树之2-3树(理论)
多路查找树之2-3树(理论)原创 2017-03-04 09:27:03 · 4687 阅读 · 0 评论 -
平衡二叉树的实现原理(代码实现)
平衡二叉树的实现原理(代码实现)原创 2017-03-04 08:53:01 · 7252 阅读 · 0 评论 -
平衡二叉树的实现原理
平衡二叉树的实现原理原创 2017-03-03 10:34:10 · 5232 阅读 · 0 评论 -
二叉排序树的删除操作
二叉排序树的删除操作原创 2017-03-02 19:57:13 · 6350 阅读 · 3 评论 -
二叉排序树的查找、插入
二叉排序树的查找、插入原创 2017-03-02 09:56:06 · 5574 阅读 · 0 评论 -
二叉排序数的构造-理论
二叉排序数的构造-理论原创 2017-03-02 09:35:16 · 4812 阅读 · 0 评论 -
线性索引查找-理论
线性索引查找-理论原创 2017-03-02 09:18:23 · 4503 阅读 · 0 评论 -
斐波那契查找(黄金分割法查找)
斐波那契查找(黄金分割法查找)原创 2017-03-02 08:40:49 · 5417 阅读 · 0 评论 -
插值查找(按比例查找)
插值查找(按比例查找)原创 2017-02-28 19:56:54 · 5612 阅读 · 0 评论 -
关键路径
关键路径原创 2017-02-28 10:41:47 · 6279 阅读 · 2 评论 -
拓扑排序
拓扑排序原创 2017-02-28 00:01:59 · 4814 阅读 · 0 评论 -
最短路径(弗洛伊德算法)
最短路径(弗洛伊德算法)原创 2017-02-27 14:38:58 · 6542 阅读 · 0 评论 -
最短路径(迪杰斯特拉算法)
最短路径(迪杰斯特拉算法)原创 2017-02-26 22:33:51 · 5419 阅读 · 0 评论 -
最小生成树(克鲁斯卡尔算法)
最小生成树(克鲁斯卡尔算法)原创 2017-02-26 10:43:44 · 7025 阅读 · 0 评论 -
最小生成树(普里姆算法)
最小生成树(普里姆算法)原创 2017-02-26 09:47:38 · 6739 阅读 · 0 评论 -
7.3图的遍历(广度优先)-理论
7.3图的遍历(广度优先)-理论原创 2017-02-25 17:12:37 · 4824 阅读 · 0 评论 -
马踏棋盘算法(骑士周游问题)
马踏棋盘算法(骑士周游问题)原创 2017-02-24 15:10:16 · 5679 阅读 · 0 评论 -
7.3图的遍历(深度优先)-理论
7.3图的遍历(深度优先)-理论原创 2017-02-24 13:36:28 · 5592 阅读 · 0 评论 -
7.2图的存储结构(十字链表、邻接多重表、边集数组)
7.2图的存储结构(十字链表、邻接多重表、边集数组)原创 2017-02-23 20:15:55 · 6941 阅读 · 0 评论 -
7.2图的存储结构(邻接表)
7.2图的存储结构(邻接表)原创 2017-02-23 10:27:49 · 5703 阅读 · 0 评论 -
7.2图的存储结构(邻接矩阵)
7.2图的存储结构(邻接矩阵)原创 2017-02-23 09:37:15 · 16692 阅读 · 0 评论 -
7.1图的定义和术语
7.1图的定义和术语原创 2017-02-22 13:15:23 · 7717 阅读 · 0 评论 -
6.6.2赫夫曼编码
6.6.2赫夫曼编码原创 2017-02-21 19:26:19 · 4956 阅读 · 1 评论 -
6.6.1最优二叉树(赫夫曼树)
6.6.1最优二叉树(赫夫曼树)原创 2017-02-21 12:34:22 · 6862 阅读 · 3 评论