自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(4)
  • 收藏
  • 关注

原创 数据结构之堆

堆以及堆排序 堆的定义: 1.是一颗完全二叉树(除最后一层叶子节点,其他层级节点不为空,并且叶子节点全部要偏向左边) 2.当前节点的值要大于等于(小于等于)左右子树,那么就会有大顶堆和小顶堆的区别,大顶堆意味着堆顶值最大,小顶堆意味着堆顶最小 如何实现堆 由于完全二叉树的定义,那么堆完全可以使用数组的形式进行实现,通过下标来确定每个节点的位置,这样就省去了左右节点指针的额外开销。 1.插入: 方式1:从下往上进行插入,每次都将值放在最末端,通过不断与其父节点比较并且置换。 方式2:将所有数据先放入到数

2020-09-22 23:21:32 52

原创 数据结构学习之路之二叉搜索树

二叉搜索树 代码如下: #include<stdlib.h> #include<iostream> template<typename T> struct Tree { Tree* right; Tree* left; T data; Tree(Tree* pRight,Tree* pLeft,T nVal):right(pRight),left(pLeft),data(nVal){}; }; template<typename

2020-09-16 22:35:07 47

原创 数据结构与算法之美链表练习

简单的单向链表 template<typename T> class SingleList { public: Node<T>* pHead; public: SingleList()=default; SingleList(T d):pHead(new Node<T>(d)){}; //增 void addNode(T val) { if(!pHead) pHead = new No

2020-07-08 21:35:59 83

原创 数据结构与算法之美练习

数组和链表 数组 实现一个支持动态扩容的数组 实现一个大小固定的有序数组,支持动态增删改操作 实现两个有序数组合并为一个有序数组 #include<stdlib.h> #include<vector> using namespace std; //动态数组相关操作 template<typename T> class Array { public: Array(int nSize = 3) { m_array = new T[nSize

2020-07-07 21:42:05 85

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除