
C++/Java描述数据结构
记录了教材上所需要实现的数据结构
你别教我打游戏
直面困难,重视过程,追求结果,淡忘过去。
展开
-
C++实现队列与循环队列(queue、deque)的循环数组描述
文章目录队列与循环队列ADT实现方案循环数组完整代码对拍测试队列与循环队列ADT队列 bool empty(); int size(); T& front(); void pop(); void push(const T&);循环队列循环队列比队列要多几个功能—— 允许在头部插入,在尾部删除,查看尾部元素。 bool empty(); int size(); T& front()原创 2020-10-09 15:24:22 · 587 阅读 · 0 评论 -
线性表 —— 线性表的数组描述和链表描述
文章目录线性表抽象基类迭代器类的层次设计使用方法变长数组描述关于构造函数、析构函数、赋值、复制关于扩容、减容性能分析完整代码及测试链表描述线性表抽象基类这个抽象基类实际上约定了一个线性表应该具有那些功能。//// Created by MAC on 2020/9/26.//#ifndef DATASTRUCTURE_LINEARLIST_H#define DATASTRUCTURE_LINEARLIST_Htemplate<class T>class LinearList原创 2020-10-09 14:59:53 · 282 阅读 · 0 评论 -
C++ 实现哈夫曼树、哈夫曼编码、支持文本的压缩及解压缩功能
注释写的以及很详细了。以后可以考虑把它和压缩文本串的LZW算法结合起来,然后真的用二进制位去存储0和1,做一个真正有实际用处的压缩解压工具。#include <queue>#include <string>#include <iostream>#include <unordered_map>#include <utility>using namespace std;class HuffmanCode {private:原创 2021-04-22 15:22:59 · 542 阅读 · 0 评论 -
压缩文本串的LZW算法
#include <iostream>#include <string>#include <unordered_map>#include <vector>using namespace std;string cs[30];string lzw_compress(const string&s){ int id , len = s.size(),i = 0; string buf = "",res = ""; uno原创 2021-03-04 18:20:07 · 214 阅读 · 0 评论 -
AVL搜索树
依次插入:20 10 5 30 40 3 4 25 23 27 50//// Created by SongyangJi on 2020/11/16.///** * * 这个例子仅仅演示了AVL的基本操作,没有用泛型,只有键,没有值, * 并且假定所有数据都不相同。 * */#include <algorithm>using namespace std;#include <queue>#include <iostream>usi原创 2021-01-06 20:46:13 · 181 阅读 · 1 评论 -
平衡搜索树(Binary Search Tree BST)、索引二叉搜索树
//// Created by SongyangJi on 2020/12/23.//#ifndef DATASTRUCTURE_BINARYSEARCHTREE_H#define DATASTRUCTURE_BINARYSEARCHTREE_H#include<iostream>using std::ostream;using std::endl;using std::cout;template<class K, class V>class Binar原创 2021-01-06 22:51:46 · 183 阅读 · 1 评论