数据结构
KeepTing
java开发工程师
展开
-
队列实现舞伴配对
#include #define max 10typedef struct { int data[max]; int front; int rear;}Queue;void InitQueue(Queue &Q){ Q.front=0; Q.rear=0;}int DeQueue (Queue &Q,int &x,int num){原创 2015-09-29 20:47:33 · 2092 阅读 · 0 评论 -
分块查找
#include#include#include#include#define max 20typedef struct{ int data[max]; int len;}Sstable;typedef struct{ int data[max]; int position[max];}Div;int Ssearch(Sstable &S,i原创 2015-11-17 20:28:02 · 520 阅读 · 0 评论 -
2014年山东省第五届ACM--Full Binary Tree (满二叉树)
Full Binary TreeTime Limit: 2000MS Memory limit: 65536K题目描述In computer science, a binary tree is a tree data structure in which each node has at most two children. Consider an infinite full原创 2016-04-10 15:58:38 · 652 阅读 · 0 评论 -
哈夫曼编码与译码
#include #include #include int s2; int s1; int m; typedef struct { char ch; int data; int p,lc,rc; }Htree,*Hufftree; typedef char* Huffcode;原创 2015-11-29 16:13:43 · 5054 阅读 · 0 评论 -
集合的交、并、差运算
#include#include #includeint flag[100]={0};typedef struct node{ int data; struct node *next;}node,*List;void Build (List &L,int n){ srand(time(0)); L=(List)malloc(sizeof(node));原创 2015-12-15 20:34:13 · 11739 阅读 · 0 评论 -
最小生成树(普利姆算法)
#include #include ///调用STL队列库函数#include ///调用STL栈库函数#include#define max 100using namespace std;int visited[max]={0};typedef struct Arccell{ int adj;}Arccell,Adjm[max][max];ty原创 2015-11-29 11:37:01 · 625 阅读 · 0 评论 -
排序
#include#define max 20int n;struct student{ int id; char name[max]; int score; int rank;};student stu[max];void build(student stu[]){ FILE *fp; int i,n; fp=fopen("原创 2015-12-01 20:27:38 · 474 阅读 · 0 评论 -
二叉排序树
#include#include#include typedef struct node{ int data; struct node *lc,*rc;}Binode,*Bitree;void Insert(Bitree &T,int &e){ Bitree s; if (!T) { s=(Bitree)malloc(sizeo原创 2015-11-24 19:54:41 · 530 阅读 · 3 评论 -
数据结构小练
孩子-兄弟法存储树并求结点数#include#includeint sum=0;typedef struct node{ int data; struct node *firstchild,*nextbrother;}TNode,*LTNode;void creatTree(LTNode &T){ int v; printf ("输入节点信息(0表示空):\n"); s原创 2015-11-13 19:21:56 · 407 阅读 · 0 评论 -
栈实现表达式求值
#includetypedef struct { char data[10]; int top;}Stack;void InitStack (Stack &s){ s.top=0;}void Push (Stack &s,char x){ if (s.top>10) printf ("栈满\n");原创 2015-09-24 20:50:37 · 706 阅读 · 0 评论 -
栈的顺序存储实现进制转换
#includetypedef struct{ int data[100]; int top;}Stack;void InitStack(Stack &S){ S.top=-1;}void Push (Stack &S,int x) //入栈{ S.top++; S.data[S.top]=x;}void Pop原创 2015-09-23 20:09:58 · 913 阅读 · 0 评论 -
判断邻接表存储的有向图是否有环
#include#include#include#define max 20using namespace std;int indegree[max];typedef struct Arcnode{ int adj; struct Arcnode *nextarc;}Arcnode;typedef struct Vnode { int data; A原创 2015-11-04 20:51:01 · 7763 阅读 · 1 评论 -
图的邻接矩阵存储与遍历
#include #include#include#include#define max 20using namespace std;int visited[max]={0};typedef struct Arccell{ int adj;}Arccell,Adjm[max][max];typedef struct{ int vexs[max]; Adjm原创 2015-10-27 20:48:41 · 1275 阅读 · 0 评论 -
链式结构实现线性表的基本操作
#include #include typedef int Elementype;typedef struct Node { Elementype data; struct Node *next;}List;List *p,L;List * Init_ListEnd(List *ptr) ///尾插法建立单链表{ int num; ptr=(Li原创 2015-09-07 20:54:08 · 2248 阅读 · 0 评论 -
顺序结构实现线性表的基本操作
#include #include typedef int Elementype;#define maxsize 10typedef struct { Elementype data[maxsize]; int last;}List;List L,*ptr;List *empty(){ List *ptr; ptr=(List *)malloc(sizeo原创 2015-09-06 08:33:15 · 1129 阅读 · 0 评论 -
图的邻接表存储与遍历
#include#include#include#include#define max 20using namespace std;int visited[max]={0};typedef struct Arcnode{ int adj; struct Arcnode *nextarc;}Arcnode;typedef struct Vnode { int原创 2015-11-03 21:52:16 · 3274 阅读 · 1 评论 -
哈夫曼树与编码
#include #include#includeint s2;int s1;typedef struct { int data; int p,lc,rc;}Htree,*Hufftree;typedef char **Huffcode;void select (Hufftree &Ht,int n,int s1,int s2){ char *cd;原创 2015-10-20 20:40:31 · 526 阅读 · 0 评论 -
二叉树基本操作
#include#includetypedef struct node{ char data; struct node *lc,*rc;}node,*Btree;void CreatBtree1(Btree &T){ char ch; scanf ("%c",&ch); if (ch=='#') T=NULL; else原创 2015-10-10 15:57:33 · 488 阅读 · 0 评论 -
HDU 1251 统计难题(字典树模板)
Problem DescriptionIgnatius最近遇到一个难题,老师交给他很多单词(只有小写字母组成,不会有重复的单词出现),现在老师要他统计出以某个字符串为前缀的单词数量(单词本身也是自己的前缀).Input输入数据的第一部分是一张单词表,每行一个单词,单词的长度不超过10,它们代表的是老师交给Ignatius统计的单词,一个空行代表单词表的结束.第二部分是一连串的提原创 2016-09-17 09:45:46 · 368 阅读 · 0 评论