随笔分类 -  数据结构

摘要:肯取势者可为人先,能谋势者必有所成 跳表说明 1.跳表是一种随机化的数据结构,可以被看做二叉树的一个变种,它在性能上和红黑树、AVL 树不相上下,但是跳表的原理非常简单,目前在 Redis 和 LevelDB 中都有用到。 2.跳表的期望空间复杂度为 O(n),跳表的查询,插入和删除操作的期望时间复 阅读全文
posted @ 2022-07-28 22:34 煊奕 阅读(667) 评论(0) 推荐(0)
摘要:分析 + 栈:后进先出 + 队列:先进先出 要使用两个栈实现队列(先进先出),主要思路是 1.插入一个元素:直接将元素插入stack1即可。 2.删除一个元素:当stack2不为空时 ,直接弹出栈顶元素,当stack2为空时,将stack1元素逐个弹出并压入stack2,然后再弹出栈顶元素。 具体看 阅读全文
posted @ 2019-09-25 19:46 煊奕 阅读(2990) 评论(0) 推荐(2)
摘要:遍历规则 + 前序遍历:根结点 左子树 右子树 + 中序遍历:左子树 根结点 右子树 + 后序遍历:左子树 右子树 根结点 + 层次遍历:只需按层次遍历即可 注: 1.前序、中序、后序属于深度优先遍历(使用递归较为方便),层次遍历为广度优先遍历(一般实现需要借助其他数据结构的支撑,如下面的队列等)。 阅读全文
posted @ 2019-09-22 22:28 煊奕 阅读(1564) 评论(0) 推荐(0)
摘要:```C++ include using namespace std; template class Queue { public: Queue(); bool isEmpty() const; bool isFull()const; void enQueue(const T&); T deQueu 阅读全文
posted @ 2019-09-21 19:04 煊奕 阅读(2017) 评论(0) 推荐(0)
摘要:```C++ include //栈的数组实现 using namespace std; define MAXSIZE 10; template class Stack { public: //默认构造函数 Stack(); Stack(size_t maxElements); Stack(T da 阅读全文
posted @ 2019-09-20 22:22 煊奕 阅读(2846) 评论(0) 推荐(0)