自定义博客皮肤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)
  • 收藏
  • 关注

原创 数据结构课程总结

数据结构课程总结O:第二周初步了解数据结构和算法,理解一些基础性的的概述。程序=数据结构+算法。第三四周学习了线性表,线性表的两种存储方式:顺序存储和链式存储。第五周学习了栈,栈的顺序存储:顺序栈,链式存储:链栈;第七周学习了队列,队列的顺序存储:顺序队列和环形队列,链式存储:链队。栈和队列都是操作受限的线性表。第八周学习了字符串和数组前八周所学内容都属于线性结构

2017-12-19 11:06:55 251

原创 第八周项目4字符串加密

【项目4-字符串加密】   一个文本串可用事先编制好的字符映射表进行加密。例如,设字符映射表为: abcdefghijklmnopqrstuvwxyz ngzqtcobmuhelkpdawxfyivrsj则字符串“lao he jiao shu ju jie gou”被加密为“enp bt umnp xby uy umt opy”。   设计一个程序,实现加密、解密算法,将输入的

2017-12-27 09:40:13 209

原创 课程设计——图书管理系统

library.h#ifndef LIBRARY_INCLUDE#define LIBRARY_INCLUDE#include#include#include#include#includetypedef struct BOOK{ long number; char name[30]; char author[30]; char press[30]; long pre

2017-12-22 23:28:57 6273 1

原创 第八周项目3顺序串算法

【项目3-顺序串算法】   采用顺序存储方式存储串,实现下列算法并测试:   (1)试编写算法实现将字符串S中所有值为c1的字符换成值为c2的字符: void Trans(SqString *&s, char c1, char c2);   (2)试编写算法,实现将已知字符串所有字符倒过来重新排列。如ABCDEF改为FEDCBA。 void Invert(SqString &s

2017-12-20 19:24:30 395

原创 第八周项目2建立链串的算法库

【项目2 - 建立链串的算法库】   定义链串的存储结构,实现串的基本运算,并完成测试。   具体要求参照项目1。 代码实现:1.头文件#ifndef LISTRING_H_INCLUDED#define LISTRING_H_INCLUDEDtypedef struct snode{ char data; struct snode *next;

2017-12-19 22:06:00 192

原创 第四周项目3单链表应用

【项目3 - 单链表应用】   完成下面的应用时,除项目中给出的特殊要求,其余工作均可利用项目2完成的算法支持。   1、设计一个算法,将一个带头结点的数据域依次为a1,a2,…,an(n≥3)的单链表的所有结点逆置,即第一个结点的数据域变为an,…,最后一个结点的数据域为a1。实现这个算法,并完成测试。提示:实现算法时,可以设计下面的函数:void Reverse(LinkLis

2017-12-14 10:43:02 187

原创 第三周项目4顺序表应用

2

2017-12-09 21:56:34 170

原创 第三周项目3求集合并集

1

2017-12-09 21:02:32 182

原创 第三周项目2建设“顺序表”算法库

【项目2 - 建设“顺序表”算法库】   领会“0207将算法变程序”部分建议的方法,建设自己的专业基础设施算法库。这一周,建的是顺序表的算法库。   算法库包括两个文件:   头文件:list.h,包含定义顺序表数据结构的代码、宏定义、要实现算法的函数的声明;   源文件:list.cpp,包含实现各种算法的函数的定义   请采用程序的多文件组织形式,在项目1的基础上,建

2017-12-09 20:12:22 177

原创 第十三周项目1验证算法

【项目1 - 验证算法】 运行并本周视频中所讲过的算法,观察结果并领会算法。 1、认真阅读并验证折半查找算法。请用有序表{12,18,24,35,47,50,62,83,90,115,134}作为测试序列,分别对查找90、47、100进行测试。 代码实现:(1)查找90#include #define MAXL 100typedef int KeyType;typedef

2017-12-04 21:34:50 171

原创 第八周项目1建立顺序串的算法库

【项目1 - 建立顺序串的算法库】   定义顺序串的存储结构,实现其基本运算,并完成测试。   要求:   1、头文件sqString.h中定义数据结构并声明用于完成基本运算的函数。对应基本运算的函数包括:void StrAssign(SqString &s,char cstr[]); //字符串常量cstr赋给串svoid StrCopy(SqString &s,SqSt

2017-12-04 21:16:10 171

原创 第七周项目2建立链队算法库

【项目2 - 建立链队算法库】   定义链队存储结构,实现其基本运算,并完成测试。   具体要求参照项目1。 代码实现:1.头文件 liqueue.h#ifndef LIQUEUE_H_INCLUDED#define LIQUEUE_H_INCLUDEDtypedef char ElemType;typedef struct qnode{ ElemType d

2017-12-04 21:14:30 183

原创 第五周项目3括号的匹配

【项目3 - 括号的匹配】   假设表达式中允许三种括号:圆括号、方括号和大括号。编写一个算法,判断表达式中的各种左括号是否与右括号匹配。 例如,输入2+(3+4)*[2+{[3]}]-8,输出匹配正确;输入2+(3+4*[2)+{[3]}-8,输出匹配错误。提示:(1)遇到左括号入栈,遇到右括号后,出栈一个符号,看是否配对。若配对,继续,直到读完所有的符号,栈也正好为空。若在中间

2017-11-29 21:47:40 181

原创 第五周项目2建立链栈算法库

【项目2 - 建立链栈算法库】   定义链栈存储结构,实现其基本运算,并完成测试。   具体要求参照项目1代码实现:1.头文件 listack.h#ifndef LISTACK_H_INCLUDED#define LISTACK_H_INCLUDEDtypedef char ElemType;typedef struct linknode{ ElemType

2017-11-27 21:49:26 223

原创 第四周项目2建设“单链表”算法库

【项目2 - 建设“单链表”算法库】   按照“0207将算法变程序”部分建议的方法,建设自己的专业基础设施算法库。这一周,建的是单链表的算法库。   算法库包括两个文件:   头文件:linklist.h,包含定义顺序表数据结构的代码、宏定义、要实现算法的函数的声明;   源文件:linklist.cpp,包含实现各种算法的函数的定义      请采用程序的多文件组织

2017-11-27 21:29:44 206

原创 第十一周项目1图基本算法库

【项目1 - 图基本算法库】定义图的邻接矩阵和邻接表存储结构,实现其基本运算,并完成测试。 1、头文件graph.h中定义相关的数据结构并声明用于完成基本运算的函数。对应基本运算的函数包括:void ArrayToMat(int *Arr, int n, MGraph &g); //用普通数组构造图的邻接矩阵void ArrayToList(int *Arr, int n, AL

2017-11-13 19:13:37 176

原创 第九周项目1二叉树算法库

【项目1 - 二叉树算法库】  定义二叉树的链式存储结构,实现其基本运算,并完成测试。 要求:   1、头文件btree.h中定义数据结构并声明用于完成基本运算的函数。对应基本运算的函数包括:void CreateBTNode(BTNode *&b,char *str); //由str串创建二叉链BTNode *FindNode(BTNode *b,ElemType

2017-11-07 21:27:12 256

原创 第五周项目1建立顺序栈算法库

【项目1 - 建立顺序栈算法库】   定义顺序栈存储结构,实现其基本运算,并完成测试。   要求:   1、头文件sqstack.h中定义数据结构并声明用于完成基本运算的函数。对应基本运算的函数包括:void InitStack(SqStack *&s); //初始化栈void DestroyStack(SqStack *&s); //销毁栈bool StackEmpt

2017-10-22 16:16:53 460

原创 第七周项目1建立顺序环形队列算法库

【项目1 - 建立顺序环形队列算法库】   定义顺序环形队列存储结构,实现其基本运算,并完成测试。 要求:   1、头文件sqqueue.h中定义数据结构并声明用于完成基本运算的函数。对应基本运算的函数包括:void InitQueue(SqQueue *&q); //初始化顺序环形队列void DestroyQueue(SqQueue *&q); //销毁顺序环形队列boo

2017-10-12 11:07:06 491

原创 第四周项目1建立单链表

【项目1 - 建立单链表】   定义单链表存储结构,用头插法和尾插法建立单链表,并显示建立好以后的结果。 #include #include typedef int ElemType;typedef struct LNode //定义单链表结点类型{ ElemType data; struct LNode *next; //指向后继

2017-09-21 10:59:34 257

原创 第二周项目3体验复杂度

【项目3 - 体验复杂度】 1.两种排序算法的运行时间   排序是计算机科学中的一个基本问题,产生了很多种适合不同情况下适用的算法,也一直作为算法研究的热点。本项目提供两种排序算法,复杂度为O(n2)的选择排序selectsort,和复杂度为O(nlogn)的快速排序quicksort,在main函数中加入了对运行时间的统计。  请阅读后附的程序1和程序2,利用一个将近10万条数据

2017-09-20 12:19:59 256

原创 第二周项目2程序的多文件组织

【项目2 - 程序的多文件组织】   学习数据结构,目标就是要编制出有相当规模的程序的。将所有的代码放在一个文件中的做法,不能适用现阶段的需求了。   通过这个项目,确认有能力用多文件组织程序。方便以后各章,我们就某一数据结构定义算法库,并能引用算法库进行实践。   最简单的多文件组织,一个项目中有3个文件:   (1) .h 头文件:定义数据类型、声明自定义函数、定义宏等  

2017-09-20 12:08:41 276

原创 第三周项目1顺序表的基本运算

【项目1 - 顺序表的基本运算】   领会“0207将算法变程序”部分建议的方法,将顺序表部分的算法变成程序。  实现顺序表基本运算有算法(对应视频0204创建线性表的实现和0205顺序表基本运算的实现),依据“最小化”的原则进行测试。所谓最小化原则,指的是利用尽可能少的基本运算,组成一个程序,并设计main函数完成测试。  作为第一个这种类型的实践(后续每一部分均有这种实践,

2017-09-19 22:21:53 345

原创 第二周项目1函数参数传递的三种方式

【项目1 - C/C++语言中函数参数传递的三种方式】   C语言提供了两种函数参数传递的方式:传值和传地址。在C++中,又拓展了引用方式。通过本项目,确认自己已经掌握了这三种方式的原理,为后续学习做好准备。(1)传值#include void myswap(int x, int y){ int t; t=x; x=y; y=t;}int mai

2017-09-11 10:09:15 276

空空如也

空空如也

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

TA关注的人

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