《数据结构》部分理论实践源代码集C实现.doc
文本预览下载声明
/*线性表顺序存储的基本操作*/……………………..………………………………2
/*线性表链式存储-单链表的基本操作*/…………….………………………………5
/*双链表的基本操作*/………………………………………………………………...9
/*顺序表应用*/……………………………………………………………………….13
/*单链表的应用*/…………………………………………………………………….14
/*顺序栈的基本操作*/……………………………………………………………….16
/*链式栈的基本操作*/……………………………………………………………….18
/*栈的应用:求表达式值*/……………………………………………………….…...20
/*顺序队的基本操作*/……………………………………………………………….23
/*循环队的基本操作*/………………………………………………………….……25
/*链式队的基本操作*/……………………………………………………………….27
/*队列应用-求迷宫问题*/……………………………………………………………30
/*队列排序(习题3.6)*/…………………………………………………………….....32
/*只有一个指针rear的链式队的基本操作(习题3.7)*/…………………………....34
/*顺序串的基本操作*/………………………………………………………………..37
/*链式串基本操作*/…………………………………………………………………..41
/*矩阵的基本操作*/…………………………………………………………………..47
/*三元组稀疏矩阵的基本操作*/……………………………………………………..49
/*链式稀疏矩阵的基本操作*/……………………………………………………..…53
/*二叉树基本操作*/…………………………………………………………………..56
/*二叉树遍历*/………………………………………………………………………..60
/*二叉排序树基本操作*/…………………………………………………………..…62
/*构造哈夫曼树*/……………………………………………………………………..66
/*有向图的邻接矩阵生成和显示*/……………………………………………….….68
/*无向图的邻接表生成和显示*/…………………………………………………..…70
/*无向图的深度优先搜索*/…………………………………………………………..72
/*无向图的宽度优先搜索*/…………………………………………………………..74
/*普里姆算法构造最小生成树*/……………………………………………………..77
/*克鲁斯卡尔算法构造最小生成树*/………………………………………………..79
/*Dijkstra算法求最短路径*/………………………………………………………...81
/*Floyd算法求最短路径*/………………………………………………………...…83
/*直接插入排序算法*/……………………………………………………………..…85
/*希尔排序算法*/……………………………………………………………………..86
/*直接选择排序算法*/……………………………………………………………..…88
/*冒泡排序算法*/……………………………………………………………………..89
/*冒泡排序算法*/……………………………………………………………………..90
/*归并排序算法*/……………………………………………………………………..92
/*哈希表:开放地址法解决冲突*/…………………………………………………..94
/*哈希表:拉链法解决冲突*/………………………………………………………..96
/*链表的应用-求两个一元多项式之和*/…………………………………………….98
/*栈的应用-判断一个数是否是回文数*/……………………………………………102
/*采用顺序结构存储串,编写一个函数,求串s和串t的一个最长公共子串*/……104
/*二叉树的应用-设计一个表示家谱的二叉树*/………………………………...….106
/*快速排序的设计*/………………..110 /*哈希表查找设计*/………….…113
/*线性表顺序存储的基本操作*/
#include stdio.h
#define MaxSize 50
typedef char ElemType;
struct List
{
ElemType list[MaxSize];
int size;
};
voi
显示全部