自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

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

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

2017-09-27 11:07:16 280

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

链栈算法库采用程序的多文件组织形式,包括两个文件:      1.头文件:listack.h,包含定义链栈数据结构的代码、宏定义、要实现算法的函数的声明;   #ifndef LISTACK_H_INCLUDED#define LISTACK_H_INCLUDEDtypedef char ElemType;typedef struct linknode{ ElemType d

2017-09-27 10:53:51 267

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

顺序栈算法库采用程序的多文件组织形式,包括两个文件:      1.头文件:sqstack.h,包含定义顺序栈数据结构的代码、宏定义、要实现算法的函数的声明;#ifndef SQSTACK_H_INCLUDED#define SQSTACK_H_INCLUDED#define MaxSize 100typedef char ElemType;typedef struct

2017-09-27 10:13:03 260

原创 第四周 项目6 - 多项式求和

提示: 1、存储多项式的数据结构   多项式的通式是pn(x)=anxn+an−1xn−1+...+a1x+a0。n次多项式共有n+1项。直观地,可以定义一个数组来存储这n+1个系数。以多项式p(x)=−3.4x10−9.6x8+7.2x2+x为例,存储这个多项式的数组如下图: 这里写图片描述   可以看出,这种方案适合对某些多项式的处理。但是,在处理一些次数高但项数少的多项式时,存在浪费

2017-09-21 11:06:37 439

原创 第四周 项目5- 循环双链表应用

【项目- 循环双链表应用】   设非空线性表ha和hb都用带头节点的循环双链表表示。设计一个算法Insert(ha,hb,i)。其功能是:i=0时,将线性表hb插入到线性表ha的最前面;当i>0时,将线性表hb插入到线性表ha中第i个节点的后面;当i大于等于线性表ha的长度时,将线性表hb插入到线性表ha的最后面。   请在实现算法时,除项目中给出的特殊要求,其余工作均可利用项目4完成的算

2017-09-21 11:04:10 256

原创 第四周 项目4 - 建设双链表算法库

双链表算法库算法库采用程序的多文件组织形式,包括两个文件:      1.头文件:dlinklist.h,包含定义双链表数据结构的代码、宏定义、要实现算法的函数的声明:#ifndef DLINKLIST_H_INCLUDED#define DLINKLIST_H_INCLUDEDtypedef int ElemType;typedef struct DNode

2017-09-21 10:59:45 286

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

项目 - 单链表算法】(程序中利用了已经实现的单链表算法,头文件LinkList.h及其中函数的实现见单链表算法库)  1、设计一个算法,将一个带头结点的数据域依次为a1,a2,…,an(n≥3)的单链表的所有结点逆置,即第一个结点的数据域变为an,…,最后一个结点的数据域为a1。实现这个算法,并完成测试。 [参考解答] (程序中利用了已经实现的单链表算法,头文件LinkLis

2017-09-21 10:47:22 268

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

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

2017-09-21 10:36:15 223

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

定义单链表存储结构,用头插法和尾插法建立单链表,并显示建立好以后的结果。   请在下面代码的基础上开展工作:#include #include typedef int ElemType;typedef struct LNode //定义单链表结点类型{ ElemType data; struct LNode *next; //指向后继结点}

2017-09-21 10:33:47 272

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

【项目 - 顺序表应用】 定义一个采用顺序结构存储的线性表,设计算法完成下面的工作: 1、删除元素在[x, y]之间的所有元素,要求算法的时间复杂度为O(n),空间复杂度为O(1); 2、将所在奇数移到所有偶数的前面,要求算法的时间复杂度为O(n),空间复杂度为O(1)。提示: (1)充分利用前面建立的算法库解决建立顺序表、输出线性表的问题; (2)为保证复杂度的要

2017-09-20 11:00:12 689

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

假设有两个集合 A 和 B 分别用两个线性表 LA 和 LB 表示,即线性表中的数据元素即为集合中的成员。设计算法,用函数unionList(List LA, List LB, List &LC )函数实现该算法,求一个新的集合C=A∪B,即将两个集合的并集放在线性表LC中。提示: (1)除了实现unnionList函数外,还需要在main函数中设计代码,调用unionList进行

2017-09-20 10:53:51 356

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

学习《数据结构》课程的过程中,同步开展实践。对每一种逻辑结构,实现其各种存储结构下的基本运算,是一项基础性的工作。  本文为算法库中的第一个,针对线性表中的顺序存储结构,实现各种基本运算。   算法库包括两个文件:    头文件:list.h,包含定义顺序表数据结构的代码、宏定义、要实现算法的函数的声明;    源文件:list.cpp,包含实现各种算法的函数的定义 l

2017-09-15 15:40:19 341

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

在数据结构的学习中,掌握基本运算是一个基础性的工作。这种“抽象”级别的成果,适用于各种应用场合,也是训练计算思维的根本依托之一。   在实践性的学习路线中,实践可以分为三个层次:验证性、设计性和综合性。验证性实验是最初步和基本的的,通过验证课堂讲的、书上写的内容,加深对相关知识的理解;设计性实验锻炼的是运用某些基本知识和原理解决问题的能力;而综合性实验则达到综合运用多方面的知识,解决实际问题的

2017-09-15 14:56:18 653

原创 第二周 项目3—汉诺塔

#include #define discCount 4long move(int, char, char,char);int main(){ long count; count=move(discCount,'A','B','C'); printf("%d个盘子需要移动%ld次\n", discCount, count); return 0;}lon

2017-09-14 11:12:08 145

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

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

2017-09-14 10:53:27 195

原创 第二周 项目1—C/C++语言中函数参数传递的三种方式

主函数main():int main(){ int a, b; printf("请输入待交换的两个整数:"); scanf("%d %d", &a, &b); __________________; //分三个程序,分别写上调用myswap的合适形式 printf("调用交换函数后的结果是:%d 和 %d\n", a, b); return

2017-09-14 10:43:52 225

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

经典排序法:/* *Copyright (c) 2017, 烟台大学计算机学院 *All rights reserved. *文件名称:天尊.cpp *作 者:无量天尊 *完成日期:2017年9月13日 *版 本 号:v1.0 * *问题描述:使用两种不同的算法对十万条数据进行排序 *输入描述:含有十万条数据的文档 *程序输出:见程序运行截屏

2017-09-13 20:49:56 159

空空如也

空空如也

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

TA关注的人

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