
数据结构
tianxuanlove
这个作者很懒,什么都没留下…
展开
-
链栈的实现
[code="java"]#include using namespace std;#define ElemType inttypedef struct LNode{ ElemType data; struct LNode *next;}Node;//链栈class ListStack{private: Node *head; int list_...原创 2011-08-24 10:13:47 · 85 阅读 · 0 评论 -
Trie树(单词查找树或键树)
[align=center]Trie树[/align] Trie树,又称单词查找树或键树,是一种树形结构,是一种哈希树的变种。典型应用是用于统计和排序大量的字符串(但不仅限于字符串),所以经常被搜索引擎系统用于文本词频统计。它的优点是:最大限度地减少无谓的字符串比较,查询效率比哈希表高。 Trie是一颗存储多个字符串的树。相邻节点间的边代表一个字符,这样树的每条分支代表一则子串,而树...原创 2011-09-21 12:56:23 · 142 阅读 · 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 · 335 阅读 · 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 · 135 阅读 · 0 评论 -
单链表的创建
[code="java"]//单链表的创建//算法思路:先建立一个空数据域的链表头指针//从该节点依次插入新节点读入数据//直至输入ctrl+z结束输入#include #include typedef int ElemType;//定义数据链表结构typedef struct Node{ int data; //数据域 struct Node ...2011-06-11 20:39:18 · 113 阅读 · 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 · 118 阅读 · 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 · 154 阅读 · 0 评论 -
串的模式匹配算法
c实现[code="java"]#include using namespace std;//串的模式匹配算法//返回字串t在主串s中第pos个字符后的位置,若不存在则返回0, 返回的位置可以是0int Index(char s[], char t[], int pos){ int slen = strlen(s), tlen = strlen(t);; int...原创 2011-09-07 14:01:46 · 172 阅读 · 0 评论 -
串的顺序实现
[align=center]串的顺序实现[/align]串的顺序结构实现有弊端:1.串的最大长度固定2.当串的长度超过MAXSTRLEN时,采用截尾法处理,这种方法不仅在求串的连接时可能发生,还在串的插入,置换也有可能发生.[code="java"]#include using namespace std;#define MAXSTRLEN 255 //用户可以在255...原创 2011-09-06 11:26:54 · 206 阅读 · 0 评论 -
队列的线性实现
继上篇文章 直接贴代码[code="java"]#include using namespace std;#define ElemType intconst int INIT_SIZE = 100;const int INCREMENT_SIZE = 10;//缺点:浪费空间class Queue{private: int front; int re...原创 2011-08-25 15:50:30 · 184 阅读 · 0 评论 -
3.4.2 -队列的链式表示和实现
[align=center][size=large]队列的链式表示和实现[/size][/align] 队列是一种先进先出的数据结构,和食堂排队打饭类似,在前面的先打到饭,而后来者只有等前面的打完饭,后面的才能进行以下给出C++实现[code="java"]#include using namespace std;#define ElemType inttypede...原创 2011-08-25 12:53:34 · 167 阅读 · 0 评论 -
Huffman编码
[align=center]最优二叉树(Huffman树)[/align]首先给出路径和路径长度的定义:从树的一个结点到另一个结点之间的分支构成这两点之间的路径,路径上的分支数目叫路径长度,树的路径长度为从根到每一个结点的路径长度之和。带权路径长度:为该结点到跟的路径长度和结点上权的乘积。树的带权路径:根到每一个结点的路径长度和结点上权的乘积之和。其中带权路径长度WPL最小...原创 2011-10-18 13:27:10 · 140 阅读 · 0 评论