
数据结构
JPDAYSUNDAY
这个作者很懒,什么都没留下…
展开
-
循环队列及循环队列实现数值转换
#include#define Length 10#define ERROR 0#define TRUE 1using namespace std;class XU_DL{private: int *item; int front; int rear; int maxlength;public: XU_DL(int length=Length)原创 2012-10-12 20:41:26 · 914 阅读 · 0 评论 -
c++实现快速排序(Bubble Sort)
递归实现#includeusing namespace std;int main(){void SX_Quick_Sort(int array[],int i,int j);int Quick_Sort(int array[],int i,int j);cout<<"Please input data number is:";int n,i,*p;cin>>n;p=new原创 2012-12-03 20:35:21 · 2232 阅读 · 0 评论 -
c++实现起泡排序
#includeusing namespace std;int main(){void Bubble_Sort(int array[],int n);cout<<"Please input data number is:";int n,i,*p;cin>>n;p=new int [n+1];for(i=1;i<n+1;i++) cin>>p[i];Bubble_Sort(p原创 2012-12-03 20:36:35 · 2071 阅读 · 0 评论 -
迷宫找路径,只要找到了一条就跳出
#includeusing namespace std;int n;int Maze[101][101];bool vis[101][101];struct unit//栈中的单元,记录x,y坐标{ int x,y;};struct list{ int top;//栈顶指针 unit place[101*101]; list(){top=0;} bool ba原创 2012-11-19 19:40:46 · 938 阅读 · 0 评论 -
树的非递归实现的中序遍历
好纠结,还用了二级指针的传递,记开辟二级指针,刚开始以为好简单,后来写着写着好麻烦!!!还有什么比较好的,简单的请给点意见吧!//遍历二叉树的非递归实现#include#include#define STACKlength 100#define ADD 10 #define ERROR 0#define TRUE 1using namespace std;struct ECS_d原创 2012-11-06 23:07:34 · 814 阅读 · 0 评论 -
栈的链式存储
#includeusing namespace std;struct Data{ Data *next; int data;};class Link_Stack{private: Data *base; Data *top; int top1;public: Link_Stack() { Data *temp=new Data; temp->data=NU原创 2012-12-10 17:03:57 · 876 阅读 · 2 评论 -
循环链表实现删除数据 小孩转圈淘汰游戏(循环链表实现)
因为我使用了分开写的文件,把类的声明放在了头文件中,下面是类的定义#include#include"Cycling_Link.h"using namespace std;#define TRUE 1#define ERROR 0int Link::Initlist(){ head=new Data; if(NULL==head)return ERROR; hea原创 2012-11-07 23:52:37 · 3281 阅读 · 0 评论 -
迷宫 C++实现
//文件的输入,有墙#include#include#include#includeusing namespace std;const int max1=100*100; //加入墙const int max2=102;bool value[max2][max2]; //记录是否被访问过int原创 2013-03-07 19:13:01 · 7756 阅读 · 0 评论 -
图结构的应用:教学计划编制问题
有两种方法:一种没有学分排序,另一种考虑了学分排序,较推荐栈中排好序的方法,贪心更完全测试数据文本:C1 程序设计基础 # 2C2 离散数学 C1 3C3 数据结构 C1,C2 4C4 汇编语言 C1 3C5 语言的设计和分析 C3,C4 2C6 计算机原理 C11 3C7 编译原理 C3,C5 4C8 操作系统 C3,C6 4C9 高等数学 # 7 C10 线原创 2013-05-01 18:41:09 · 10730 阅读 · 5 评论 -
查找方法
#includeusing namespace std;int main(){ int SX_Find(int array[],int n,int k); //折顺序查找 int BinSearch1(int array[],int n,int k);//非递归算法 int BinSearch2(int array[], int low, int high, int k);原创 2012-11-16 21:46:23 · 893 阅读 · 0 评论 -
DFS算法,BFS算法遍历图
前提:所有图的实现我都只用了邻接矩阵进行图的存储DFS算法遍历图//图的遍历之深度优先搜索#include#define MAX 1000#define TRUE 1#define ERROR 0using namespace std;class Graph{private: int n; //结点个数的平方 int m; //节点的个数原创 2012-11-16 21:12:16 · 1526 阅读 · 0 评论 -
特殊矩阵的压缩矩阵及其转置
//已有数据稀疏矩阵的压缩存储及转置/*#include#includeusing namespace std;struct SYZ{ int i,j,v;};struct JZ{ int hang,lie; int n; SYZ *data;};void CSH(JZ &a){ a.hang=4; a.lie=5; a.n=原创 2012-10-12 20:40:13 · 1159 阅读 · 1 评论 -
链表实现(线性,链表)
//顺序线性表 /*#includeusing namespace std;#define Virtuallength 100#define AddspaceList 50#define TRUE 1#define ERROR 0class List{private: int *item; int length; int MAXlength;pu原创 2012-10-12 20:38:15 · 660 阅读 · 0 评论 -
栈的实现
//顺序栈的实现/*#include#define STACKlength 100#define ADD 10 #define ERROR 0#define TRUE 1using namespace std;class SX_Stack{private: int *base; int top; int stacklength;public:原创 2012-10-12 20:42:44 · 572 阅读 · 0 评论 -
建立动态的n维数组
建立一维的动态数组#includeusing namespace std;int main(){ int *p,n,i,n1; cin>>n; p=new int [n]; for(i=0;i<n;i++) { cin>>n1; *(p+i)=n1; } for(i=0;i<n;i++) cout<<*(p+i)<<" "; cout<原创 2012-10-15 21:35:41 · 2477 阅读 · 1 评论 -
c++实现数据结构的二叉树及其遍历二叉树
二叉树的初始化,删除,遍历注意:看是否满足条件,则必须是在调试的对话框的右下侧观察数据是否满足是一个树及其它的左孩子和右孩子//二叉树链式存储的实现#include#includeusing namespace std;struct ECS_data //先定义好一个数据的结构{ char data; ECS_data *l; ECS_data *r;原创 2012-10-16 12:30:00 · 2822 阅读 · 0 评论 -
用栈实现杨辉三角
//用循环链表实现杨辉三角#include#define Length 10#define ERROR 0#define TRUE 1using namespace std;class XU_DL{private: int *item; int front; int rear; int maxlength;public: XU_DL(int原创 2012-10-14 21:55:55 · 2465 阅读 · 0 评论 -
c++实现折半插入排序
#includeusing namespace std;void BS_SIS(int array[],int n){ int i,low,high,mid,j; for(i=2;i<n;i++) { array[0]=array[i]; //必须先存储好 low=1; high=i-1; while(low<=high) { mid=(low+high原创 2012-11-26 22:43:48 · 2736 阅读 · 4 评论 -
二叉排序树
#includeusing namespace std;struct BiTree{ int data; BiTree *Lchild; BiTree *Rchild;};void BiSort(BiTree *&root) //数据的初始化{ int Insert(BiTree *&root,BiTree *s); int num; co原创 2012-11-16 23:56:01 · 961 阅读 · 1 评论 -
树结构的应用:表达式类型的实现
#include #include#define TRUE 1#define FALSE 0#define OK 1#define ERROR 0using namespace std;struct BiTNode //结点的数据{ bool tag; //true为数字,false为字符 int num; char c; BiTNode *lchild,*原创 2013-05-01 18:35:39 · 2152 阅读 · 1 评论