摘要:
什么是Git/GitHub Git 是一个开源的分布式版本控制系统,用于敏捷高效地处理任何或小或大的项目。 版本控制(Revision control)是一种在开发的过程中用于管理我们对文件、目录或工程等内容的修改历史,方便查看更改历史记录,备份以便恢复以前的版本的软件工程技术 。 版本控制分类 本 阅读全文
摘要:
什么是数据库 数据库是一个以某种有组织的方式存储数据的集合。 数据库(database) 保存有组织的数据的容器(通常是一个文件或一组文件)。 要注意的是数据库软件应称为DBMS(数据库管理系统)。数据库是通过DBMS创建和操纵的容器。 表 表是一种结构化的文件,可用来存储某种特定类型的数据。 表( 阅读全文
摘要:
此代码是再 "BST.h" 和 "LinkedList.h" 上的二次封装,阅读前请先了解底层代码。 Set 基于链表的Set:Value是无序不重复的。 基于BST的Set:Value是有序不重复的。 节点结构 由于是底层链表和BST的二次封装所以和底层数据结构的节点相同。 Map Map:是由K 阅读全文
摘要:
二叉查找树(Binary Search Tree),(又:二叉搜索树,二叉排序树)它或者是一棵空树,或者是具有下列性质的二叉树: 若它的左子树不空,则左子树上所有结点的值均小于它的根结点的值; 若它的右子树不空,则右子树上所有结点的值均大于它的根结点的值; 它的左、右子树也分别为二叉排序树。 二叉搜 阅读全文
摘要:
下载OpenCV "OpenCV官网" 我们是Windows环境所以选择 Windows 配置环境变量 创建一个Visual Studio项目 配置Visual Studio属性 在 包含目录 中引入路径: D:\Program Files\OpenCV\build\include D:\Progr 阅读全文
摘要:
栈操作 入队 template<typename T> void LinkedListQueue<T>::enqueue(T e) { if (tail == nullptr) //队列是否为空 { tail = new QNode<T>(e); //为空则添加在对尾指针 head = tail; 阅读全文
摘要:
链式栈:就是一种操作受限的单向链表,每次入栈一个元素,向链表中添加一个节点,出栈一个元素,释放一个节点。因为栈具有“后进先出”的特点,如果每次在链表的尾部进行插入和删除,就要遍历整个链表来找到尾节点。而在头部进行插入和删除时,只需根据头指针即可找到链表的首元素结点。而无需遍历链表。所以链式栈的出,入 阅读全文
摘要:
与数组相似,链表也是一种线性数据结构。这里有一个例子: 正如你所看到的,链表中的每个元素实际上是一个单独的对象,而所有对象都通过每个元素中的引用字段链接在一起。 链表有两种类型:单链表和双链表。上面给出的例子是一个单链表,这里有一个双链表的例子:双向链表(DoubleLinkList) 单链表中的每 阅读全文
摘要:
循环队列相比普通的队列,元素出队时无需移动大量元素。 代码 ArrayQueue.h 点它 代码清单 #ifndef C___LOOPQUEUE_H #define C___LOOPQUEUE_H #include "ArrayQueue.h" #include <iostream> templat 阅读全文
摘要:
队列是一种 先进先出(First In First Out,FILO) 的种线性数据结构 。 代码是在动态数组二次封装,先阅读底层实现体验更佳 Array.h 点它 代码清单 #ifndef C___ARRAYQUEUE_H #define C___ARRAYQUEUE_H #include "Ar 阅读全文