![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
数据结构
tianxuanlove
这个作者很懒,什么都没留下…
展开
-
链栈的实现
[code="java"]#include using namespace std; #define ElemType int typedef struct LNode{ ElemType data; struct LNode *next; }Node; //链栈 class ListStack{ private: Node *head; int list_...原创 2011-08-24 10:13:47 · 67 阅读 · 0 评论 -
Trie树(单词查找树或键树)
[align=center]Trie树[/align] Trie树,又称单词查找树或键树,是一种树形结构,是一种哈希树的变种。典型应用是用于统计和排序大量的字符串(但不仅限于字符串),所以经常被搜索引擎系统用于文本词频统计。它的优点是:最大限度地减少无谓的字符串比较,查询效率比哈希表高。 Trie是一颗存储多个字符串的树。相邻节点间的边代表一个字符,这样树的每条分支代表一则子串,而树...原创 2011-09-21 12:56:23 · 118 阅读 · 0 评论 -
利用栈结构计算十进制转化二进制
[code="java"] //栈的顺序表示实现 #include #include //栈初始大小 #define STACK_INIT_SIZE 100 //栈的增长大小 #define STACKINCREMENT 10 #define OVERFLOW 0 #define ERROR 0 #define FALSE 0 #define TRUE 1 ...原创 2011-06-11 21:18:37 · 313 阅读 · 0 评论 -
顺序栈的实现
[code="java"] //栈的顺序表示实现 #include #include //栈初始大小 #define STACK_INIT_SIZE 100 //栈的增长大小 #define STACKINCREMENT 10 #define OVERFLOW 0 #define ERROR 0 #define FALSE 0 #define TRUE 1 ...2011-06-11 21:09:31 · 115 阅读 · 0 评论 -
单链表的创建
[code="java"] //单链表的创建 //算法思路:先建立一个空数据域的链表头指针 //从该节点依次插入新节点读入数据 //直至输入ctrl+z结束输入 #include #include typedef int ElemType; //定义数据链表结构 typedef struct Node{ int data; //数据域 struct Node ...2011-06-11 20:39:18 · 92 阅读 · 0 评论 -
二叉树的创建和遍历
[code="java"]/** ** name: 二叉树的创建和遍历 ** author: Dev|il ** date: 2011-10-15 12:56 **/ #include #include using namespace std; const int MAX_TREE_SIZE = 1000; typedef int ElemType; typedef...原创 2011-09-15 21:50:00 · 104 阅读 · 0 评论 -
顺序表的增删改查
[code="java"] //功能:顺序表的实现 //思路:初始化一个顺序表,如果n > INIT_LIST_SIZE 则重新分配内存空间 //反之,将元素存入顺序表 #include #include #define INIT_LIST_SIZE 2 #define ERROR 0 #define OK 1 #define LISTINCREMENT 10 #def...原创 2011-06-08 21:11:44 · 130 阅读 · 0 评论 -
串的模式匹配算法
c实现 [code="java"]#include using namespace std; //串的模式匹配算法 //返回字串t在主串s中第pos个字符后的位置,若不存在则返回0, 返回的位置可以是0 int Index(char s[], char t[], int pos) { int slen = strlen(s), tlen = strlen(t);; int...原创 2011-09-07 14:01:46 · 152 阅读 · 0 评论 -
串的顺序实现
[align=center]串的顺序实现[/align] 串的顺序结构实现有弊端: 1.串的最大长度固定 2.当串的长度超过MAXSTRLEN时,采用截尾法处理,这种方法不仅在求串的连接时可能发生,还在串的插入,置换也有可能发生. [code="java"]#include using namespace std; #define MAXSTRLEN 255 //用户可以在255...原创 2011-09-06 11:26:54 · 179 阅读 · 0 评论 -
队列的线性实现
继上篇文章 直接贴代码 [code="java"] #include using namespace std; #define ElemType int const int INIT_SIZE = 100; const int INCREMENT_SIZE = 10; //缺点:浪费空间 class Queue{ private: int front; int re...原创 2011-08-25 15:50:30 · 158 阅读 · 0 评论 -
3.4.2 -队列的链式表示和实现
[align=center][size=large]队列的链式表示和实现[/size][/align] 队列是一种先进先出的数据结构,和食堂排队打饭类似,在前面的先打到饭,而后来者只有等前面的打完饭,后面的才能进行 以下给出C++实现 [code="java"]#include using namespace std; #define ElemType int typede...原创 2011-08-25 12:53:34 · 145 阅读 · 0 评论 -
Huffman编码
[align=center]最优二叉树(Huffman树)[/align] 首先给出路径和路径长度的定义: 从树的一个结点到另一个结点之间的分支构成这两点之间的路径,路径上的分支数目叫路径长度,树的路径长度为从根到每一个结点的路径长度之和。 带权路径长度:为该结点到跟的路径长度和结点上权的乘积。 树的带权路径:根到每一个结点的路径长度和结点上权的乘积之和。 其中带权路径长度WPL最小...原创 2011-10-18 13:27:10 · 127 阅读 · 0 评论