自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(24)
  • 收藏
  • 关注

原创 一名程序员的自我修养

一忌:轻易言败,没有自信  没有永不放弃精神的程序员,只是一个有程序员名号的假程序员。一个真正的程序员,知道在程序设计的过程中,可能会遇到不计其数的困难和问题,可能有极多的挫折和失败,而成功只有一次。  就为解决一个问题,我们可能连续十几甚至几十小时的坐在计算机前不停的工作。一个问题解决了,可能又有其它的问题出现。而你要是不能坚持下来,可能从前的一切努力都流失了。轻易言败的人请不要

2015-11-30 16:30:37 283

原创 拓扑排序算法的验证

头文件及功能函数详见【图算法库】代码:#include "graph.h"void TopSort(ALGraph *G){    int i,j;    int St[MAXV],top=-1;            //栈St的指针为top    ArcNode *p;    for (i=0; in; i++)          //入度置初值0 

2015-11-30 16:14:08 348

原创 Floyd算法的验证

头文件及功能函数详见【图算法库】代码:#include "graph.h"#define MaxSize 100void Ppath(int path[][MAXV],int i,int j) //前向递归查找路径上的顶点{ int k; k=path[i][j]; if (k==-1) return; //找到了起点则返回

2015-11-30 16:12:07 314

原创 Dijkstra算法的验证

头文件及功能函数详见【图算法库】代码:#include "graph.h"#define MaxSize 100void Ppath(int path[],int i,int v) //前向递归查找路径上的顶点{ int k; k=path[i]; if (k==v) return; //找到了起点则返回 P

2015-11-27 08:37:01 342

原创 Kruskal算法的验证

头文件及功能函数详见【图算法库】代码: #include "graph.h"#define MaxSize 100typedef struct{ int u; //边的起始顶点 int v; //边的终止顶点 int w; //边的权值} Edge;void InsertSort(Edge E[],int

2015-11-27 08:28:56 261

原创 Prim算法的验证

* 问题描述:Prim算法的验证。* 输入描述:无* 程序输出:测试数据头文件及功能函数详见【图算法库】代码:#include "graph.h"void Prim(MGraph g,int v){ int lowcost[MAXV]; //顶点i是否在U中 int min; int closest[MAX

2015-11-23 16:59:30 334

原创 迷宫问题之图深度优先遍历解法

* 问题描述: 设计一个程序,采用深度优先遍历算法的思路,解决迷宫问题。   (1)建立迷宫对应的图数据结构,并建立其邻接表表示。   (2)采用深度优先遍历的思路设计算法,输出从入口(1,1)点到出口(M,N)的所有迷宫路径。 * 输入描述:迷宫的邻接矩阵 * 程序输出:邻接表表示迷宫,走出迷宫所有的路径 代码:#include

2015-11-23 16:34:10 884

原创 图遍历算法实现

问题及代码:问题描述: 实现图遍历算法,分别输出如下图结构的深度优先(DFS)遍历序列和广度优先遍历(BFS)序列。 输入描述: 若干测试数据。程序深度优先便利(DFS):(1)源文件:#include"head.h"extern visited[MAXV];void DFS(ALGraph *G, int v){ ArcNode *p;

2015-11-23 16:22:59 1895

原创 操作用邻接表存储的图

问题及代码:问题描述: 实现图遍历算法,分别输出如下图结构的深度优先(DFS)遍历序列和广度优先遍历(BFS)序列。 输入描述:若干测试数据。程序输出:DFS,BFS的遍历序列。 int OutDegree(ALGraph *G,int v){ ArcNode *p; int n=0; p=G->adjlist[v].firstarc;

2015-11-23 16:13:45 393

原创 项目1图基本算法库

图的存储结构主要包括邻接矩阵和邻接表,本算法库提供存储结构的定义,以及用于构造图存储结构、不同结构的转换及显示的代码。算法库采用程序的多文件组织形式,包括两个文件: 1.头文件:graph.h,包含定义图数据结构的代码、宏定义、要实现算法的函数的声明;#ifndef GRAPH_H_INCLUDED#define GRAPH_H_INCLUDED#define MAXV 100

2015-11-20 08:27:32 305

原创 用二叉树求解代数表达式

问题描述: 用二叉树来表示代数表达式,树的每一个分支节点代表一个运算符,每一个叶子节点代表一个运算数(为简化,只支持二目运算的+、-、*、/,不加括号, 运算数也只是一位的数字字符。本项目只考虑输入合乎以上规则的情况)。请设计算法, (1)根据形如“1+2?3?4/5”的字符串代表的表达式,构造出对应的二叉树(如图), 用后序遍历的思路计算表达式的值时,能体现出

2015-11-20 08:23:10 1081

原创 二叉树算法验证(4)哈夫曼树

问题描述: 运行并重复测试教学内容中涉及的算法。改变测试数据进行重复测试的意义在于, 可以从更多角度体会算法,以达到逐渐掌握算法的程度。 使用你的测试数据,并展示测试结果,观察运行结果,以此来领会算法。 输入描述: 若干测试数据。程序输出: 对应数据的输出。#include #include #define N 50 //叶子结点数

2015-11-16 17:20:07 595

原创 二叉树算法验证(3)中序线索化二叉树的算法验证

问题描述: 运行并重复测试教学内容中涉及的算法。改变测试数据进行重复测试的意义在于, 可以从更多角度体会算法,以达到逐渐掌握算法的程度。 使用你的测试数据,并展示测试结果,观察运行结果,以此来领会算法。 输入描述: 若干测试数据。程序输出: 对应数据的输出。#include #include #define MaxSize 100typede

2015-11-16 16:37:57 338

原创 二叉树算法验证(2)二叉树构造算法的验证

问题描述: 运行并重复测试教学内容中涉及的算法。改变测试数据进行重复测试的意义在于, 可以从更多角度体会算法,以达到逐渐掌握算法的程度。 使用你的测试数据,并展示测试结果,观察运行结果,以此来领会算法。 输入描述: 若干测试数据。程序输出: 对应数据的输出。1.由先序和中序构造二叉树BTNode *CreateBT1(char *pre,char *

2015-11-16 16:08:40 338

原创 二叉树构造算法的验证

问题及代码:1.由先序序列和中序序列构造二叉树定理:任何n(n≥0)个不同节点的二叉树,都可由它的中序序列和先序序列唯一地确定。证明(数学归纳法) 基础:当n=0时,二叉树为空,假设:设节点数小于n的任何二叉树,都可以由其先序序列和中序序列唯一地确定。 归纳:已知某棵二叉树具有n(n>0)个不同节点,其先序序列是a0a1…an−1;中序序列是b0b1…bk−1bkbk+

2015-11-13 08:18:43 500

原创 二叉树的层次遍历算法

问题及代码:算法库见第十周项目1 *问题描述:实现二叉树的层次遍历算法,并对用”A(B(D,E(H(J,K(L,M(,N))))),C(F,G(,I)))”创建的二叉树进行测试。 *程序输出: #include #include "btreee.h"void LevelOrder(BTNode *b){ BTNode *p; B

2015-11-13 08:16:04 509

原创 利用二叉树遍历思想解决问题

问题描述: 假设二叉树采用二叉链存储结构存储,分别实现以下算法,并在程序中完成测试: (1)计算二叉树节点个数; (2)输出所有叶子节点; (3)求二叉树b的叶子节点个数; (4)设计一个算法Level(b,x,h),返回二叉链b中data值为x的节点的层数。   (5)判断二叉树是否相似(关于二叉树t1和t2相似的判断: ①t1和t2

2015-11-09 16:15:48 408

原创 二叉树遍历的递归算法

问题描述: 实现二叉树的先序、中序、后序遍历的递归算法,并对用”A(B(D,E(H(J,K(L,M(,N))))),C(F,G(,I)))”创建的二叉树进行测试。    请利用二叉树算法库。输入描述: 若干测试数据。程序输出: 二叉树的输出。二叉树算法库main函数:int main(){ BTNode *b; Cre

2015-11-06 08:25:17 450

原创 二叉树算法库 .

// 头文件#define MaxSize 100typedef char ElemType;typedef struct node{ ElemType data; //数据元素 struct node *lchild; //指向左孩子 struct node *rchild; //指向右孩子

2015-11-02 17:04:04 356

原创 广义表算法库及应用

问题描述: 1)建立广义表算法库,包括: ① 头文glist.h,定义数据类型,声明函数; ② 源文件glist.cpp,实现广义表的基本运算,主要算法包括: int GLLength(GLNode *g); //求广义表g的长度 int GLDepth(GLNode *g); //求广义表g的深度 GLNode *CreateGL(c

2015-11-02 16:59:38 608

原创 稀疏矩阵的三元组表示的应用(3.2)

问题描述: 采用三元组存储稀疏矩阵,设计两个稀疏矩阵相加的运算算法 输入描述:两个稀疏矩阵程序输出:相加运算后的结果。main函数:#include"tup.h"int main(){ TSMatrix ta,tb,tc; int A[M][N]= { {0,0,1,0,0,0,0}, {0,2,0,0,0,0,

2015-11-02 16:42:25 516

原创 稀疏矩阵的三元组表示的实现(3.1)

问题描述: (1)建立稀疏矩阵三元组表示的算法库,包括: ① 头文tup.h,定义数据类型,声明函数; ② 源文件tup.cpp,实现稀疏矩阵三元组表示的基本运算,主要算法包括: void CreatMat(TSMatrix &t,ElemType A[M][N]); //从一个二维稀疏矩阵创建其三元组表示 bool Value(TSMatrix &t

2015-11-02 16:32:44 673

原创 对称矩阵压缩存储的实现与应用(2)

问题描述: (2)设计算法,实现两个用压缩形式存储的对称矩阵A和B的加法和乘法。实现中请使用好前面设计的基本运算。 输入描述:a,b对称矩阵的全部数据。程序输出:矩阵a,b,a+b与a*b的结果。#include #define N 4#define M 10int value(int a[],int i,int j);void madd(int a[],int b[]

2015-11-02 16:10:49 495

原创 猴子选大王(数组版)

问题描述: 一群猴子,编号是1,2,3 …m,这群猴子(m个)按照1-m的顺序围坐一圈。 从第1只开始数,每数到第n个,该猴子就要离开此圈,这样依次下来,最后一只出圈的猴子为大王。 输入m和n,输出猴子离开圈子的顺序,从中也可以看出最后为大王是几号猴子。 要求采用数组作为存储结构完成。 输入描述:猴子的个数与出队的序号。程

2015-11-02 16:03:34 603

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除