`
Touch_2011
  • 浏览: 287432 次
  • 性别: Icon_minigender_1
  • 来自: 武汉
社区版块
存档分类
最新评论
文章列表
/* * 构造一颗二叉查找树,实现树的插入、删除等基本操作 * */ #include<stdio.h> #include<stdlib.h> typedef struct node { int count; //记录某个元素出现的次数 int data; //数据 struct node * left; struct node * right; }Node,*PNode; int array[100]; //按序保存遍历后的元素 int k=0; //数组array长度 //初 ...
/* * 题目:给定一个全部由字符串组成的字典,字符串全部由大写字母构成。其中为每个字符串编写密码,编写的 * 方式是对于 n 位字符串,给定一个 n 位数,大写字母与数字的对应方式按照电话键盘的方式: * 2: A,B,C 5: J,K,L 8: T,U,V * 3: D,E,F 6: M,N,O 9: W,X,Y,Z * 4: G,H,I 7: P,Q,R,S * 题目给出一个1--12位的数,找出在字典中出现且密码是这个数的所有字符串。字典中字符串的个数不超过5000。 ...
/* * 题目:英语词典。所有的单词存放在dictionary.txt中。输入一个英文单词,在词典中查找这个单词, *       若找到显示这个单词的中文意思,显示此单词不存在。 * 思路:以字母顺序建立索引表。 * */   /* * 题目:英语词典。所有的单词存放在dictionary.txt中。输入一个英文单词,在词典中查找这个单词, * 若找到显示这个单词的中文意思,显示此单词不存在。 * 思路:以字母顺序建立索引表。 * */ #include<stdio.h> #include<stdlib.h> #incl ...
  求这个有向网中任意两点的最短路径   /* * 最短路径,迪杰斯特拉算法和弗洛伊德算法(采用邻接矩阵存储) * */ #include<stdio.h> #define MAX_VERTEX_NUM 20 #define INFINITE 10000 //当做无穷大 //图的定义 typedef struct { int vertexNum; char vertex[MAX_VERTEX_NUM]; int arc[MAX_VERTEX_NUM][MAX_VERTEX_NUM]; }Graph,*PGraph; / ...
对这个有向图进行拓扑排序 /* * 拓扑排序(采用邻接矩阵存储) */ #include<stdio.h> #define MAX_VERTEX_NUM 20 //图的定义 typedef struct { int vertexNum; char vertex[MAX_VERTEX_NUM]; int arc[MAX_VERTEX_NUM][MAX_VERTEX_NUM]; }Graph,*PGraph; //构造有向图 void createdGraph(PGraph g) { int i,j; g->ver ...
求这个网的最小生成树 /* * 普里姆算法和克鲁斯卡尔算法求最小生成树 * 采用邻接矩阵存储 * */ #include<stdio.h> #define MAX_VERTEX_NUM 20 //图的定义 typedef struct { int vertexNum; int edgeNum; char vertex[MAX_VERTEX_NUM]; int arc[MAX_VERTEX_NUM][MAX_VERTEX_NUM]; }Graph,*PGraph; //辅助数组元素 typedef struct { ...
/* * 邻接表存储的有向图的基本操作 */ #include<stdio.h> #include<stdlib.h> #define MAX_VERTEX 20 typedef char VertexType; //用数组vertex按序存放遍历的各个顶点,广度遍历时看成队列,深度遍历时看成栈 VertexType vertex[MAX_VERTEX]; //图的边的定义 typedef struct EdgeNode { int nextToVertex; //相邻顶点 struct EdgeNo ...
/* *无向网的基本操作(邻接矩阵存储) */ #include<stdio.h> #define MAX_VERTEX_NUM 20 typedef char VertexType; typedef struct { int vertexNum;//顶点个数 VertexType vertex[MAX_VERTEX_NUM];//顶点信息 int arcs[MAX_VERTEX_NUM][MAX_VERTEX_NUM];//邻接矩阵 }GraphMatrix,*PGraphMatrix; //用数组vertex按序存放遍历的各个顶点,广 ...
思路大致同上一个程序,只是这个用c++的模板实现,实现起来容易一些。 把对指针的操作都封装载模板类里面。这样就避免了很多指针问题。但是相对 与C语言实现,效率要低一些。
可变分区存储管理 问题描述:     编写程序模拟实现内存的动态分区法存储管理。内存空闲区使用自由链管理,采用最坏适应算法从自由链中寻找空闲区进行分配,内存回收时要与相邻空闲区的合并。 初始状态信息:假定系统的内存共640K,初始状态为操作系统本身占用64K。 将要申请内存的作业信息(存储在document/job.txt文件中),当前时间是0。 输入:用户打开document/job.txt文件,输入作业信息。 处理:模拟时间逐歩增加,每次加1.采用先来先服务算法调度作业,模拟作业运行,用最坏适应算法进行内存的分配。且进行内存的回收,注意与空闲分区的合并。直到所以作业运行 ...
    网络协议分析工具Wireshark的使用:       1.观察ping命令和tracert命令的工作过程       2.观察TCP连接的建立过程和终止过程       3.观察使用DNS来进行域名解析的过程     word文档已上传    
#include<stdio.h> #include<stdlib.h> #include<string.h> #include<conio.h> #define MAXNUM 60 typedef struct { char ch; int weight; //权值,这个字符出现的频率 int parent; int left; int right; }HuffNode; typedef struct { char code[MAXNUM]; int start; }HuffCode; ...
#include<stdio.h> #include<stdlib.h> //二叉树的节点定义 typedef struct TreeNode { char ch; //数据域 struct TreeNode *lchild; //左孩子 struct TreeNode *rchild; //右孩子 }BTNode,*PBTNode; //先序构造二叉树 void createBTree(PBTNode *root) { char ch; ch=getchar(); if(ch=='#') ...
由于很多时候要用到栈,队列,栈,于是把它们写成模板。 列表用链表和线性表两种方式实现。 同时栈和队列也是有链式实现和顺序实现 。                       
/** *   这是一个进程调度模拟的程序,输入阻塞进程的个数和信息,输入就绪进程的个数和信息, *   然后采用时间片轮转法进程调度,在整个调度过程中会有阻塞队列里的进程被唤醒 *   输出进程切换信息和cpu的利用率 * **/
Global site tag (gtag.js) - Google Analytics