数据结构与算法
文章平均质量分 74
czlt86
这个作者很懒,什么都没留下…
展开
-
建立中序线索二叉树
#include "stdio.h"#define OK 1#define LEN sizeof(struct BiTNode)#define TRUE 1#define FALSE 0#define Link 0#define Thread 1struct BiTNode //定义一个二叉树结点{ char data; struct BiTNode *lchild,*rchild; int原创 2006-11-29 12:23:00 · 2749 阅读 · 0 评论 -
总结:几种常见的内部排序方法
**************************************************************************************************** //直接插入排序,算法简洁,容易实现,时间复杂度O(N2),但较稳定,在基本有序和SIZE很小//时是最好的排序方法#include "stdio.h"#include "stdlib.h"#i原创 2007-02-10 13:20:00 · 1316 阅读 · 0 评论 -
图的遍历
//用于深度优先遍历DFSTraverse(struct Graph *ALGraph){ int visited[MAXSIZE],i; for(i=0;ivexnum;i++) visited[i]=FALSE; for(i=0;ivexnum;i++) if(!visited[i]) DFS(ALGraph,i,visited); getch();}DFS(struct Graph原创 2006-12-14 22:54:00 · 864 阅读 · 0 评论 -
用邻接表表示的有向网
#include "stdio.h"#define MAXSIZE 100struct ArcNode{ int adjvex; //该弧所指向节点的位置 struct ArcNode *next; //指向下一个弧节点 int weight; //权值};struct VNode{ char data; //顶点的值 struct ArcNode *f原创 2006-12-10 14:11:00 · 2059 阅读 · 0 评论 -
用十字链表表示的有向图
#include #define MAXSIZE 100struct ArcNode{ int tailvex,headvex; //该弧的尾和头顶点的位置 struct ArcNode *hlink,*tlink; //弧头相同和弧尾相同的链域};struct VexNode{ char data; //顶点的值 struct ArcNode *firstin原创 2006-12-10 14:10:00 · 1630 阅读 · 0 评论 -
今天学会了最优二叉树的写法!!!
真想不到这样的小程序竟然可以用在分数判级,电报编码等众多领域,现在真感觉到数据结构的威力了!!!#include "stdio.h"#define LEN sizeof(struct Huffman)#define SIZE 4struct Huffman{ int weight; //编码的权值 int parent,lchild,rchild; //双亲,左孩子,右孩子位置 c原创 2006-12-02 22:28:00 · 1759 阅读 · 3 评论 -
呵呵,今天的成果!!图的数组表示法
#include "conio.h"#include "stdio.h"#define MAXSIZE 100 //最大顶点数struct Graph{ char vexs[MAXSIZE]; //顶点数组 int arcs[MAXSIZE][MAXSIZE]; //邻接矩阵 int vexnum,arcnum; //图的当前顶点数和弧数原创 2006-12-06 22:53:00 · 2103 阅读 · 0 评论 -
终于会写二叉树了!贴出来高兴一下
早就看数据结构后面的章节里有个二叉树,觉得很深奥,很神秘,没想到现在自己也会了,高兴啊!!!#include "stdio.h"#define OK 1#define LEN sizeof(struct BiTNode)#define TRUE 1#define FALSE 0struct BiTNode //定义一个二叉树结点{ char data; struct BiTNode *l原创 2006-11-27 12:41:00 · 1155 阅读 · 3 评论 -
文本编辑器
#include "stdio.h"#include "string.h"#include "stdlib.h"#define LEN sizeof(struct LineTable)struct LineTable{ char *front; //行起始位置 int length; //行长度 struct LineTable *next;};main(){ struct Li原创 2006-11-26 17:37:00 · 743 阅读 · 0 评论 -
学数据结构的意义
正所谓道可道,非常道。编程之道就如武学之道,VB,VC,delphi等开发工具的技巧好比各门各派的武功招式,算法和数据结构好比内功心法和武学原理。内力深厚,任何招式到了手上都能够化腐朽为神奇;掌握了武学原理,更能做到无招胜有招。转载 2006-11-26 17:35:00 · 1541 阅读 · 0 评论 -
今天学会了用于模式匹配的KMP算法,思路太精彩了!!
以下是两种模式匹配的算法,前者为普通算法,后者为KMP算法Index(char S[],char Sub[]){ int i=0,j=1; while (i { if(S[i]==Sub[j]) { i++; j++; } else { i=i-j+2; j=1; } } if (j>Sub[0]) return i-Sub[0]; else return 0;}原创 2006-11-26 17:31:00 · 1428 阅读 · 1 评论 -
总结:几种常见的查找算法
*****************************************************************************//静态查找——顺序查找*****************************************************************************//静态查找——索引顺序表,效果比顺序表查找较好,但远不原创 2007-02-25 19:44:00 · 1903 阅读 · 0 评论