中南民族大学数据结构

合集下载

对生物医学工程专业的认识

对生物医学工程专业的认识

生物医学工程专业(医学仪器方向)生物医学工程专业培养具备生命科学、电子技术、计算机技术及信息科学有关的基础理论知识以及医学与工程技术相结合的科学研究能力,能在生物医学工程领域、医学仪器以及其它电子技术、计算机技术、信息产业等部门从事研究、开发、教学及管理的高级工程技术人才。

生物医学工程专业属于电子信息大类的专业,本专业学生主要学习生命科学、电子技术、计算机技术和信息科学的基本理论和基本知识,受到电子技术、信号检测与处理、计算机技术在医学中的应用的基本训练,具有生物医学工程领域中的研究和开发的基本能力。

由于生物医学工程学科在疾病的预防、诊断、治疗、康复以及相关产业等方面起着巨大作用,世界各个主要国家均将它列入高技术领域,重点投资优先发展,本学科也将始终是朝阳学科。

本专业修业年限为4年,毕业生授予工学学士学位。

中南民族大学生物医学工程专业始建于1994年,1995年开始招收本科生;1997年,该专业获一级学科硕士学位授予权;2001年生物医学工程学科被国家民委确定为重点学科,其所属的脑认知实验室和生物医学工程综合实验室为国家民委重点实验室。

本专业现有教授8人,副教授15人;其中国家级“百千万人才工程”一二层次入选者1人,校学科带头人和骨干教师8人;硕士生导师13人。

十几年来该专业为国家和民族地区培养1500多名各层次专门技术人才,其中本科生1300多人、硕士研究生150余人。

该专业毕业生具有较强的就业竞争力和宽广的就业领域,受到了用人单位的普遍好评。

本专业主要学习的课程包括:生物医学工程概论;电路原理、模拟电子技术基础、数字电子技术基础、生物医学电子学、微机原理与应用、DSP/EDA技术、嵌入式系统;计算机基础、高级语言程序设计、计算机网络与通信技术;信号与系统、数字信号处理、计算机图形学、医学图像处理、自动控制原理、医学模式识别;生物医学检测与传感技术、人体运动信息检测与处理;医用电子仪器、医学仪器设计;生物学导论、医用化学、生化与分子生物学、解剖生理学、生物学专题。

中南民族大学842计算机专业基础综合数据结构算法设计与分析C语言程序设计2021年考研专业课初试大纲

中南民族大学842计算机专业基础综合数据结构算法设计与分析C语言程序设计2021年考研专业课初试大纲

附件2:中南民族大学2021年硕士研究生入学考试自命题科目考试大纲(计算机科学学院)科目名称:计算机专业基础综合(数据结构、算法设计与分析、C语言程序设计)科目代码:842适用学科(类别)专业(领域):计算机科学与技术、电子信息(计算机技术方向)……………………………………………………………一、考试性质计算机专业基础综合是为招收计算机科学与技术学科、电子信息的硕士研究生而设置的具有选拔性质的考试科目,其目的是科学、公平、有效地测试考生掌握计算机科学与技术学科大学本科阶段专业知识、基本理论、基本方法的水平和分析问题、解决问题的能力,评价的标准是高等院校计算机科学与技术学科优秀本科毕业生所能达到的及格或及格以上水平,确保硕士研究生的招生质量。

二、考查目标要求考生比较系统地掌握数据结构、算法设计与分析和C语言程序设计的基本概念、基本原理和基本方法,能够综合运用所学的基本原理和基本方法分析、判断和解决有关理论问题和实际应用问题。

三、考试形式和试卷结构1.试卷满分及考试时间本试卷满分为150分,考试时间为180分钟。

2.考试方式为闭卷、笔试。

3.试卷考查的题型及其比例单项选择题约40分简答题约30分综合分析题约50分算法设计题约30分四、考查内容【考查目标】1.掌握数据结构、算法的基本概念、基本原理和基本方法。

2.掌握数据的逻辑结构、存储结构及基本操作的实现,能够对算法进行基本的时间复杂度与空间复杂度的分析。

3.能够运用数据结构、算法的基本原理和方法进行问题的分析与求解,具备采用C或C++语言设计与实现算法的能力。

一、线性表(一)线性表的定义和基本操作(二)线性表的实现1.顺序存储2.链式存储3.线性表的应用二、栈、队列(一)栈和队列的基本概念(二)栈和队列的顺序存储结构(三)栈和队列的链式存储结构(四)栈和队列的应用三、串、数组(一)串的存储表示(二)串的模式匹配算法(三)数组的顺序存储(四)特殊矩阵的压缩存储四、树与二叉树(一)树的基本概念(二)二叉树1.二叉树的定义及其主要特征2.二叉树的顺序存储结构和链式存储结构3.二叉树的递归与非递归遍历4.线索二叉树的基本概念和构造(三)树、森林1.树的存储结构2.森林与二叉树的转换3.树和森林的遍历(四)树与二叉树的应用1.哈夫曼(Huffman)树和哈夫曼编码五、图(一)图的基本概念(二)图的存储及基本操作1.邻接矩阵法2.邻接表法3.邻接多重表、十字链表(三)图的遍历1.深度优先搜索2.广度优先搜索(四)图的基本应用1.最小(代价)生成树2.最短路径3.拓扑排序4.关键路径六、查找(一)查找的基本概念(二)线性表的查找1.顺序查找法2.折半查找法3.分块查找法(三)树表的查找1.二叉排序树2.平衡二叉树3.B-树4.B+树(四)散列(Hash)表的查找(五)查找算法的分析及应用七、排序(一)排序的基本概念(二)插入排序1.直接插入排序2.折半插入排序3.希尔排序(三)交换排序1.冒泡排序2.快速排序(四)选择排序1.简单选择排序2.堆排序(五)二路归并排序(六)基数排序(七)外部排序(八)各种排序算法的比较(九)排序算法的应用八、算法基础(一)算法的概念、特征(二)算法分析基础1.非递归算法的分析框架及应用2.递归算法的分析框架及应用3.三个渐进符号的意义及应用(三)算法设计技巧1.蛮力法(基本思想)2.分治法(基本思想、主定理、具体应用)3.减治法(基本思想、三个变种、具体应用)4.变治法(基本思想、三个变种、具体应用)5.动态规划(基本思想、主要步骤、具体应用)6.贪心法(基本思想、具体应用)九、C语言程序设计部分(一)C语言基础知识1.C数据类型、表达式、输入输出2.选择控制结构、循环控制结构3.函数4.数组5.指针(二)C语言高级知识1.指针和数组2.指针和字符串3.结构体和共用体(三)文件操作五、参考书目1.严蔚敏,李冬梅,吴伟民.数据结构(C语言版)(第2版).人民邮电出版社.20152.莱维汀著,潘彦译.算法设计与分析基础(第3版).清华大学出版社.20153.苏小红,王宇颖,孙志岗.C语言程序设计(第3版).高等教育出版社.2015六、特殊说明本自命题考试科目无需计算器。

中南民大理科专业介绍

中南民大理科专业介绍

中南民族大学(理科)专业介绍1)、编号为制作顺序,与专业排名无关。

2)、大类是指本科一年级入学时学习全部专业基本课程,大二以后细分具体专业,无大类项的为入学即攻读此专业。

计算机科学学院学院简介中南民族大学计算机科学学院自1985年开始办学,具有雄厚的师资力量和扎实的科研基础,现有专任教师62人,其中教授7人,副教授29人,教师中有博士学位者19人(其中博士后3人),在读博士20人,硕士生导师18人。

学院现有计算机科学与技术、软件工程、网络工程、自动化4个本科专业和计算机应用技术硕士点,其中计算机应用技术是湖北省重点学科。

现有在读全日制本科学生2200余人,硕士研究生110余人。

学院现有办公、实验、科研用房16000平方米,各类专业实验室、研究室20余个,中外文图书资料6万余册,计算机及各种仪器设备800余台(套)。

在学生培养方面,计算机科学学院特别强调培养学生坚实的理论基础、良好的科学素质和创新能力,使学生牢固掌握当前计算机科学与技术、信息科学与技术的基本理论,具有熟练的应用开发能力。

通过深化教学改革,不断提高人才培养质量,特别是着力培养学生解决实际问题的能力,以适应社会对高素质人才的迫切需要。

多年来,计算机科学学院在文字识别、人工智能、演化计算、计算机网络、数据库技术、数据挖掘、信息安全、数字图像处理等领域内形成了自己的研究特色。

近3年来,承担了国家自然科学基金项目6项、省部级科研教研项目及横向合作项目30余项,获省部级奖励6项,发表论文280余篇,其中被SCI、EI等收录110余篇次。

计算机科学学院已与加拿大泽威尔大学、韩国全北大学、澳大利亚纽卡斯尔大学等学校的相关学科建立了长期固定的学术交流合作关系,与美国威斯康星大学拉克罗斯校区联合培养软件工程硕士。

近几年来,计算机科学学院积极实施“以提高人才培养质量为中心,教学科研并重”的办学思路,学生综合素质、创新精神和实践能力得到明显提高,每年均有学生在全国智能小车竞赛、全国大学生数模建模竞赛、全国大学生英语竞赛、ACM程序设计大赛、全国计算机仿真大赛等赛事中获奖;每年均有在校学生获得湖北省大学生优秀科研成果奖;毕业生就业率连年居高,其工作能力和工作表现普遍受到用人单位的好评。

计算机科学与技术专业介绍

计算机科学与技术专业介绍
培养目标
本专业培养和造就适应社会主义现代化建设需要,德智体全面发展、基础扎实、知识面宽、能力强、素质高具有创新精神,系统掌握计算机硬件、软件的基本理论与应用基本技能,具有较强的实践能力,能在企事业单位、政府机关、行政管理部门从事计算机技术研究和应用,硬件、软件和网络技术的开发,计算机管理和维护的应用型专门技术人才。
信息领域主要的一级学科共有4个,分别是:0809电子科学与技术、0810信息与通信工程、0811控制科学与工程、0812计算机科学与技术。这四个一级学科覆盖面广、积淀深厚、发展迅速、热门度高、开设广泛,是信息领域的核心学科,也是中国各大高校——尤其是211高校和其他985高校重点发展的对象,因而竞争极其激烈。此外,0803光学工程、0835软件工程这两个小学科也属于信息领域。
4.了解与计算机有关的法规;
5.了解计算机科学与技术的发展动态;
编辑本段
主要课程
主干学科:计算机科学与技术
主要课程:电路原理、模拟电子技术、数字逻辑、数值分析、计算机原理、微型计算机技术、计算机系统结构、计算机网络、高级语言、汇编语言、数据结构、操作系统、数据库原理、编译原理、图形学、人工智能、计算方法、离散数学、概率统计、线性代数以及算法设计与分析、人机交互、面向对象方法、计算机英语等。
77
10637 重庆师范大学
77
10681 云南师范大学
77
10694 西藏大学
77
10731 兰州理工大学
77
10742 西北民族大学
77
11075 三峡大学
77
11232 北京信息科技大学
77
11417 北京联合大学
77

计算机科学与技术学术型硕士课程设置表(2015版)

计算机科学与技术学术型硕士课程设置表(2015版)

中南民族大学研究生课程设置表计算机科学与技术专业课 程类 别课 程编 号课 程名 称学时学分开课学期考核方式开 课教 师备 注考试考查必修课公共课硕士生第一外国语First ForeignLanguage8051-2√外语学院必修8学分中国特色社会主义理论与实践研究Theory and practiceof socialism withChinesecharacteristics3221√马克思主义学院马克思主义与社会科学方法论/自然辩证法概论High-tech &Marxism1612√马克思主义学院学科基础课高等工程数学AdvancedEngineeringMathematics4831√朱忠熏必修6学分程序设计方法学Programmingmethodology4831√熊志勇、程鹏专业核心课算法设计与分析Algorithm Designand Analysis4832√李子茂必修10学分数据库设计与分析Database Designand Analysis4831√蓝雯飞、高志荣高级操作系统AdvancedOperating System3221√帖 军学位要求课程高等计算机网络AdvancedComputer Network3222√侯睿、朱容波选修课专业选修课分布式系统(计算机系统结构)Distributed System3222√王德军任选3门6学分信息安全与密码学(信息安全)InformationSecurity andCryptography3222√孟博、邢光林数据挖掘Data Mining3221√宋中山、孙翀软件设计与开发Software designand development3223√导师组新技术专题New technicaltopics3223√导师组嵌入式系统Embedded Systems3222√张志俊数字图像处理Digital ImageProcessing3222√孙阳光现代软件工程Modern softwareengineering3222√李 波学科前沿课跨学科课程Interdisciplinarycourses2任选1门2学分2实践课1非学位要求课程补修课数据结构Data Structures力、跨学科专业学生补修4门课程,不计学分。

中南民族大学-软件工程复习题

中南民族大学-软件工程复习题

软工复习题1.软件是一种(B)实体,具有抽象性。

A.有形B.逻辑C.物理D.消耗2.就内容来看,软件工程应包括三个要素,它们是(C)(1)方法。

(2)工具。

(3)产品。

(4)过程A.(1)(2)(3) B. (2)(3)(4) C. (1)(2)(4) D. (1)(3)(4)3.软件工程模型有多种,下列选项中,(C)不是软件工程模型。

A.螺旋模型 B. 增量模型 C. 功能模型 D. 破布模型4.软件生存周期包括可行性分析和项目开发计划、需求分析、概要设计、详细设计、编码、(B)、维护等活动。

A.应用 B. 测试 C. 检测 D. 以上答案都不正确5.实体模型的三个基本组成成为是实体、联系和(B)A.模型B.属性C.特征D.事务6.数据流图中的基本符号有(D)A.变换、加工、数据流和存储。

B.输入、输出、外部实体和加工。

C.变换、数据存储、加工和数据流。

D.数据的源点或终点、数据流、数据存储和加工。

7.在数据流图中,有名字及方向的成分是(C)A.控制流 B. 信息流 C. 数据流 D. 信号流8.需求分析阶段研究的对象是软件项目的(A)A.用户要求 B. 合理要求 C. 模糊要求 D. 技术人员要求9.软件需求规格说明书的内容不应该包括对(B)的描述A.主要功能 B. 算法的详细过程 C. 用户的界面及运行环境 D. 软件的性能10.状态迁移图是一种描述系统状态随(A)进行迁移的有效的图形手段。

A.外部信号或事件 B. 数据 C. 时间 D. 信息11.(C)是数据流图中数据结构的操作。

A.数据流 B. 数据流量 C. 数据文件 D. 数据项12.软件设计阶段一般又可分为(B)A.逻辑设计与功能设计 B.概要设计与详细设计C.概念设计与物理设计 D. 模型设计与程序设计13.研究开发所需要的成本与资源是属于可行性研究中的(B)研究的一方面A.技术可行性 B. 经济可行性 C. 社会可行性 D. 法律可行性14.瀑布模型本质上是一种(A)A.线性顺序模型 B. 顺序迭代模型 C. 线性迭代模型 D. 及早见产品模型15.好的软件结构应该是(B)A.高耦合,高内聚 B. 低耦合,高内聚 C. 高耦合,低内聚 D. 低耦合,低内聚16.划分模块时,一个模块的(A)A.作用域应该处于其控制范围之内B.控制域应该处于其作用域之内C.作用域与控制域互不包含D.作用域与控制域不受任何限制17.(C)用于说明软件中各个模块的功能、性能及接口。

纸牌游戏Go-Fish实验报告

纸牌游戏Go-Fish实验报告

CARD_A[i]=i;
}
洗牌操作,用随机数实现对数组的打乱操作:
void Card::Shuffle()
{ 中南民族大学计算机科学学院
专业 :软件工程 学 8
号:2012213660 姓名 :唐洁
int F_num,L_num; srand((int)time(NULL)); for(int i=0;i<52;i++) {
int Licensing(int n);//发牌
private:
int CARD_A[52];
};
class Node
{
public:
Node();
Node(int value,Node *next);//初始化节点构造函数
int ListLength(Node* L); //链表的计数
int Search(Node* L , int num); //链表的查找
专业 :软件工程 学 1
号:2012213660 姓名 :唐洁
牌堆类:采用整型数组建立牌堆,并用随机数打乱牌序。 class Node { public:
Node(); Node(int value,Node *next);//初始化节点构造函数 int ListLength(Node* L); //链表的计数 int Search(Node* L , int num); //链表的查找 Node* head_Insert(Node* head , int num);//从表头插入节点 Node* Delete(Node* head , int num); //删除节点 void Print(Node *head);//链表输出 private: int card_num; char clore; Node *Link; }; 采用链表结构方式,来构造玩家手牌。用链式结构进行操作进行 删除和插入。

中南民族大学计算机分级测试范围

中南民族大学计算机分级测试范围

中南民族大学计算机分级测试范围
中南民族大学计算机分级测试范围:
一、数据结构:
1. 理解、应用、实现和评估基本数据结构,包括数组、字符串和向量。

2. 理解、应用、实现和评估非基本的数据结构,包括复杂的链表、树
和图。

3.比较不同数据结构的主要特征,并评估不同数据结构应用到哪些情况中。

二、算法:
1. 识别和分类常见的算法,评估其时间复杂度和空间复杂度,比较它
们之间的性能。

2. 设计数据不可知的算法,包括搜索、排序、图论和动态规划。

3. 分析复杂算法,分析和转化更复杂的问题到已经设计的算法上。

三、计算机组成原理:
1. 理解、应用和评估计算机系统组成原理,如流水线和指令集。

2.了解计算机存储器大小、组织和层次。

3. 理解虚拟机技术在软硬件设计中的作用。

四、编程技术:
1. 理解、应用和评估程序设计语言,包括C、C++、Java和Python。

2.编写高质量的程序代码,并了解它的行为和性能。

3. 分析面向对象程序设计,了解其主要特性并评估其应用情况。

五、操作系统:
1. 理解操作系统的基本功能,识别和分类计算机性能影响因素。

2. 了解操作系统的较新应用,包括分布式处理、安全和可靠性。

3.识别和分析不同操作系统的功能和性能,评估不同操作系统的优势。

六、网络技术:
1. 理解、识别和实现网络编程技术,例如TCP/IP网络协议。

2. 识别、评估和应用到网络安全,包括认证、授权、加密和IPv6等方面。

3. 掌握网络存储和编程技术,例如消息传递,消息系统和分布式数据库管理系统。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

院系:计算机科学学院专业:年级: 2010级课程名称:数据结构学号:姓名:指导教师:2012年 6 月 1日年级 2010班号2班学号专业姓名实验名称2 单链表的相关操作演示实验类型设计型综合型创新型实验目的或要求实验目的:通过上机实践,使学生进一步掌握线性表的逻辑定义、存储结构以及相关应用。

实验要求:自定义存储结构,用C或C++语言编写程序,要求程序模块清晰,菜单界面,有运行结果。

四个题目任选一个写入实验报告。

实验原理(算法流程)1、单链表的相关操作演示:typedef struct LNode{float data;struct LNode *next;}LNode,*LinkList;//链表节点的定义void CreateList_L(LinkList &L,int n){逆序创建一个链表,L为链表的头结点,n为输入的元素的个数}int Length_LinkList(LinkList L){将链表L中的节点个数输出出来(不包括头结点),返回值为输出的节点数;}void InsertList_L(LinkList &L,int i,float e){将e插入链表L中的i号位置;核心算法是:现在链表中找到第i-1号位置,然后将要插入的e插到i-1的后面}void DeleteList_L(LinkList &L,int i,float e){将链表L中的第i号位置的元素e删除;核心算法:从头结点开始往下找,找到第i-1号位置,然后将第i号节点删除,再把后面的节点接上}void DemandList_L(LinkList &L,int i,float e){查询链表L中的第i号位置的元素e;核心算法:找到第i号位置,然后输出出来}void OrderList_L(LinkList &L){将链表L中的数据递增排序;核心算法是:新申请一个头结点,将链表L中的元素进行比较,找到最大的元素所在的节点,将它取出来连接到新的头结点的next指针上,然后再找出次大的,再连接到头结点的next指针上,如此循环,直到链表L的next指向空即完成,然后将新的链表的头设置为L,销毁新的头结点指针}void PrintList_L(LinkList &L) {打印函数,一次将链表L中的内容输出出来}void delLinkList_L(LinkList &L){释放链表L}组内分工无(可选)实验结果分析及心得体会心得体会:首先我觉得要注意的是创建链表的时候要注意将next指针赋值为空;插入、删除、查询函数关键就是位置的查找,找到后执行相应的操作就可以了,当然还要注意些地方,比如删除不能超出链表的长度,插入不能超出插入的范围等等;其他的一些就是细节上的问题,什么时候用引用传旨,什么时候用形参传值都是要注意的。

成绩评教师签名:定2012年月日备注:源代码附后,源代码要求有注释说明#include <iostream.h>#include<stdlib.h>#include<malloc.h>typedef struct LNode{float data;struct LNode *next;}LNode,*LinkList;//链表节点的定义void CreateList_L(LinkList &L,int n){//逆序创建一个链表LinkList p,q;int i;L=(LinkList)malloc(sizeof(LNode));L->next=NULL;q=L;for(i=n;i>0;--i){p=(LinkList)malloc(sizeof(LNode));cout<<"Please input data:";cin>>p->data;cout<<endl;p->next=q->next;q->next=p;q=p;}}int Length_LinkList(LinkList L){//返回链表的长度的函数int i;LinkList p;p=L;for(i=0;p->next!=NULL;i++)p=p->next;cout<<"Single Length:"<<i<<endl;return i;}void InsertList_L(LinkList &L,int i,float e){//在链表L第i个位置插入元素eLinkList p,s;int j,m;p=L;j=0;m=Length_LinkList(L);if(!L->next){cout<<"Error!Nothing!"<<endl;exit(1);}else//找到位置i-1,在它的后面插入需要插入的元素{if(i>m+1&&i<0)//i要小于链表长度m+1{cout<<"Insert Error!"<<endl;exit(1);}else//找到第i-1个位置,在后面插入一个元素{while(p&&j<i-1)//找到要插入的位置的前一个位置{p=p->next;++j;}if(!p||j>i-1)//判断是否到了链表的末尾{cout<<"Error!"<<endl;exit(1);}s=(LinkList)malloc(sizeof(LNode));s->data=e;s->next=p->next;p->next=s;}}}void DeleteList_L(LinkList &L,int i,float e){//删除在链表L第i个位置的元素eLinkList p,q;int j,m;p=L;j=0;m=Length_LinkList(L);if(!L->next){cout<<"Error!Nothing!"<<endl;exit(1);}else//找到第i-1个位置,删除后面一个元素{if(i>m&&i<0)//i要小于链表长度m{cout<<"Delete Error!"<<endl;exit(1);}else{while(p&&j<i-1)//找到要删除的位置的前一个位置{p=p->next;++j;}if(!p||j>=i)//当i=0时不可取{cout<<"This elem is not existed!"<<endl;exit(1);}q=p->next;p->next=q->next;cout<<"Elem \""<<q->data<<"\" is removed!"<<endl;delete(q);}}}void DemandList_L(LinkList &L,int i,float e){//查询在链表L第i个位置的元素eLinkList p;int j,m;p=L->next;j=1;m=Length_LinkList(L);if(!L->next){cout<<"Error!Nothing!"<<endl;exit(1);}else{if(i>m&&i<0)//i要小于链表长度m{cout<<"Delete Error!"<<endl;exit(1);}else{while(p&&j<i)//找到需查询的位置i{p=p->next;++j;}if(!p||j>i){cout<<"This elem is not existed!"<<endl;exit(1);}cout<<"第"<<j<<"个数是:"<<p->data<<endl;}}}void OrderList_L(LinkList &L){//递增函数LinkList p,q,I,I1,I2;I=(LinkList)malloc(sizeof(LNode));//重新申请一个头结点II->next=NULL;I1=L;I2=L;p=L->next;q=L->next;if(!L->next){cout<<"Error!Nothing!"<<endl;exit(1);}while(L->next)//找到最大数,将其从链表中取出来放在新的头结点的后面{while(q)//找到最大数{if(p->data>=q->data){I2=q;q=q->next;}else{p=q;I1=I2;I2=q;q=q->next;}}I1->next=p->next;p->next=I->next;I->next=p;I1=L;I2=L;p=L->next;q=L->next;}L->next=I->next;//将新形成的链表给Lfree(I);cout<<"OK!"<<endl;}void PrintList_L(LinkList &L){//将链表中的内容打印出来LinkList p;int i;p=L;if(!L->next){cout<<"Error!Nothing!"<<endl;exit(1);}else{for(i=1;p->next;i++){p=p->next;cout<<"Print "<<i<<" data:"<<p->data<<endl;}}}void delLinkList_L(LinkList &L)//释放内存{LinkList p;p=L;for(;p;p++)free(p);}void menu(LinkList &L){//菜单函数int x,i,n;float e;cout<<"========================"<<endl;cout<<"========================"<<endl;cout<<"||1.Creat Single Link||"<<endl;cout<<"||2.Insert New Elem ||"<<endl;cout<<"||3.Delete Elem ||"<<endl;cout<<"||4.Demand Elem ||"<<endl;cout<<"||5.Order Single Link||"<<endl;cout<<"||6.Print Single Link||"<<endl;cout<<"||7.Print Link Length||"<<endl;cout<<"||8.Exit ||"<<endl;cout<<"========================"<<endl;cout<<"========================"<<endl;cout<<"Please input your choose:";cin>>x;switch(x){case 1:{cout<<"How many nodes that you need:";cin>>n;CreateList_L(L,n);menu(L);break;}case 2:{cout<<"Please input the position and data that you want to insert:"<<endl;cin>>i>>e;InsertList_L(L,i,e);menu(L);break;}case 3:{cout<<"Please input the position and data that you want to delete:"<<endl;cin>>i>>e;DeleteList_L(L,i,e);menu(L);break;}case 4:{cout<<"Please input the position and data that you want to demand:"<<endl;cin>>i>>e;DemandList_L(L,i,e);menu(L);break;}case 5:{OrderList_L(L);menu(L);break;}case 6:{PrintList_L(L);menu(L);break;}case 7:{Length_LinkList(L);menu(L);break;}case 8:{exit(0);}default:{cout<<"Input Error,Please Input Numbers From 1 To 8!"<<endl;exit(1);break;}}}int main(){LinkList L;menu(L);return 1;}年级 2010级班号学号专业软件工程姓名实验名称2表达式求值实验类型设计型综合型创新型实验目的或要求实验目的:通过上机实践,使学生进一步掌握栈这种特殊线性表的逻辑定义、存储结构以及初始化栈、入栈、出栈、栈判空等基本操作的具体实现,使学生能够应用栈的思想解决相关实际问题。

相关文档
最新文档