中南民族大学数据结构

合集下载

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

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

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

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

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

本专业修业年限为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. 掌握网络存储和编程技术,例如消息传递,消息系统和分布式数据库管理系统。

数据结构课程设计一元稀疏多项式计算器

数据结构课程设计一元稀疏多项式计算器

实习报告:题一元稀疏多项式计算器实习报告题目:设计一个一元稀疏多项式简单计算器班级:计科一班姓名:康宇学号:10061014 完成日期:一、需求分析1、一元稀疏多项式简单计算器的功能是:1〕输入并建立多项式;2〕输出多项式,输出形式为整数序列:n,c1,e1,c2,e2,cn,en,其中n是多项式的项数,c i 和ei分别是第i项的系数和指数,序列按指数降序排列;3〕多项式a 和b相加,建立多项式a+b;4〕多项式a 和b相减,建立多项式a-b。

5〕计算多项式在x处的值;16〕求多项式a、b的导函数;2、测试数据:1、(2x+5x^8-3.1x^11)+(7-5x^8+11x^9)=(-3.1x^11+11x^9+2x+7);2、(6x^-3-x+4.4x^2-1.2x^9+1.2x^9)-(-6x^-3+5.4x^2-x^2+7.8x^15)=(-7.8x^15-1.2x^9+12x^-3-x);3、(1+x+x^2+x^3+x^4+x^5)+(-x^3-x^4)=(1+x+x^2+x^5);4、(x+x^3)+(-x-x^3)=0;5、(x+x^100)+(x^100+x^200)=(x+2x^100+x^200);6、(x+x^2+x^3)+0=x+x^2+x^3.二、概要设计为实现上述程序功能,应以有序链表来表示多项式的系数和指数。

定义线性表的动态分配顺序存储结构;建立多项式存储结构,定义指针*next 利用链表实现队列的构造。

每次输入一项的系数和指数,可以输出构造的一元多项式演示程序以用户和计算机的对话方式执行,即在计算机终站上显示“提示信息〞之后,由用户在键盘上输入演示程序中规定的运行命令;最后根据相应的输入数据〔滤去输入中的非法字符〕建立的多项式以及多项式相加的运行结果在屏幕上显示。

、元素类型、结点类型和指针类型:typedefstruct LNode{floatxishu; intzhish u;////系数指数structLNode*next;}LNode,*Linklist;、建立两个全局链表指针,LinklistList1=NULL;LinklistList2=NULL;用来存放两个多项式,然后在main〔〕函数里调用输入函数。

842计算机专业基础综合

842计算机专业基础综合

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

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

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

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

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

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

3.能够运用数据结构、算法的基本原理和方法进行问题的分析与求解,具备采用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.贪心法(基本思想、具体应用)九、C语言程序设计部分(一)C语言基础知识1.C数据类型、表达式、输入输出2.选择控制结构、循环控制结构3.函数4.数组5.指针(二)C语言高级知识1.指针和数组2.指针和字符串3.结构体和共用体(三)文件操作参考书目:1.严蔚敏,李冬梅,吴伟民.数据结构(C语言版)(第2版).人民邮电出版社.20152.莱维汀著,潘彦译.算法设计与分析基础(第3版).清华大学出版社.20153.苏小红,王宇颖,孙志岗.C语言程序设计(第3版).高等教育出版社.2015。

中南民族大学2016年专业学位硕士研究生入学考试初试、复试

中南民族大学2016年专业学位硕士研究生入学考试初试、复试
2)王炳照等著:《简明中国教育史》,北京师范大学出版社,2007年版。
3)张斌贤主编,王晨副主编:《外国教育史》,教育科学出版社,2008年版。
4)张大均主编:《教育心理学》,人民教育出版社,2011年版。
818普通心理学
参考书目:
1)彭聃龄:《普通心理学》,北京师范大学出版社,2012年版。
课程与教学论
4)张大均主编:《教育心理学》,人民教育出版社,2011年版。
861体育教学论
参考书目:
1)毛振明主编:《体育教学论》(第二版),高等教育出版社,2011年3月版。
体育概论
参考书目:
1)杨文轩、杨霆著:《体育概论》,高等教育出版社,2005年7月版。
1学校体育学
2运动训练学
参考书目:
1)潘邵伟、于可红主编:《学校体育学》(第二版),高等教育出版社,2008年6月版。
中国方面可参考叶朗编著《中国文化读本》(外语教学与研究出版社,2008年版)
英美方面可参考历年专八考试人文知识部分。
1听力
2笔译
1口译
进行能力测试,不指定参考书目。
①写作
②翻译
进行写作和翻译能力测试,不指定参考书。
055102英语口译
005文学与新闻传播学院(027-67842864)
0552新闻与传播
▲204英语二
全国统考科目
▲302数学二
全国统考科目
838有机化学或839无机化学
(任选一门)
参考书目
1)胡宏纹主编:《有机化学》,上、下册,高等教育出版社,第三版,2006年5月版。
2)武汉大学、吉林大学等编:《无机化学》,高等教育出版社,第三版,1994年版。
化学综合知识

约瑟夫问题实验报告

约瑟夫问题实验报告

约瑟夫问题实验报告(文章一):约瑟夫问题数据结构实验报告中南民族大学管理学院学生实验报告实验项目: 约瑟夫问题课程名称:数据结构年级:专业:信息管理与信息系统指导教师:实验地点:管理学院综合实验室完成日期:小组成员:学年度第(一)、实验目的(1)掌握线性表表示和实现;(2)学会定义抽象数据类型;(3)学会分析问题,设计适当的解决方案;(二)、实验内容【问题描述】:编号为1,2,…,n 的n 个人按顺时针方向围坐一圈,每人持有一个密码(正整数)。

一开始任选一个正整数作为报数上限值m,从第一个人开始按顺时针方向自 1 开始顺序报数,报到m 时停止报数。

报m 的人出列,将他的密码作为新的m 值,从他在顺时针方向上的下一个人开始重新从1 报数,如此下去,直至所有人全部出列为止。

试设计一个程序求出出列顺序。

【基本要求】:利用单向循环链表存储结构模拟此过程,按照出列的顺序印出各人的编号。

【测试数据】:m 的初值为20;密码:3,1,7,2,4,8,4(正确的结果应为6,1,4,7,2,3,5)。

(三)、实验步骤(一)需求分析对于这个程序来说,首先要确定构造链表时所用的方法。

当数到m 时一个人就出列,也即删除这个节点,同时建立这个节点的前节点与后节点的联系。

由于是循环计数,所以才采用循环列表这个线性表方式。

程序存储结构利用单循环链表存储结构存储约瑟夫数据(即n个人的编码等),模拟约瑟夫的显示过程,按照出列的顺序显示个人的标号。

编号为1,2,?,n 的n 个人按顺时针方向围坐一圈,每人持有一个密码(正整数)。

一开始任选一个正整数作为报数上限值m,从第一个人开始按顺时针方向自1 开始顺序报数,报到m 时停止报数。

报m 的人出列,将他的密码作为新的m 值,从他在顺时针方向上的下一个人开始重新从1 报数,如此下去,直至所有人全部出列为止。

试设计一个程序求出出列顺序。

基本要求是利用单向循环链表存储结构模拟此过程,按照出列的顺序印出各人的编号。

2022年中南民族大学数据科学与大数据技术专业《计算机组成原理》科目期末试卷A(有答案)

2022年中南民族大学数据科学与大数据技术专业《计算机组成原理》科目期末试卷A(有答案)

2022年中南民族大学数据科学与大数据技术专业《计算机组成原理》科目期末试卷A(有答案)一、选择题1、关于LRU算法,以下论述正确的是()。

A.LRU算法替换掉那些在Cache中驻留时间最长且未被引用的块B.LRU算法替换掉那些在Cache中驻留时间最短且未被引用的块C.LRU算法替换掉那些在Cache中驻留时间最长且仍在引用的块D.LRU算法替换掉那些在Cache中驻留时间最短且仍在引用的块2、某计算机主存按字节编址,由4个64M×8位的DRAM芯片采用交叉编址方式构成,并与宽度为32位的存储器总线相连,主存每次最多读写32位数据。

若double型变量x 的主存地址为80400lAH,则读取x需要的存储周期数是()。

A.1B.2C.3D.43、float类型(即IEEE754标准中的单精度浮点数格式)能表示的最大整数是()。

A.2126-2103B.2127-2104C.2127-2105D.2128-21044、加法器采用先行进位的根本目的是()。

A.优化加法器的结构B.快速传递进位信号C.增强加法器的功能D.以上都不是5、在C语言程序中,下列表达式中值为True的有()。

I.123456789=(int)(float)l23456789Ⅱ.123456==(int)(float)1234561Ⅲ.123456789-(int(double)123456789A.仅I、ⅡB. 仅I、ⅢC.仅Ⅱ、ⅢD. I、Ⅱ、Ⅲ、6、总线宽度与下列()有关。

A.控制线根数B.数据线根数C.地址线根数D.以上都不对7、在下面描述的PCI总线的基本概念中,不正确的表述是()。

A.PCI总线支持即插即用B.PCI总线可对传输信息进行奇偶校验C.系统中允许有多条PCI总线D.PCI设备一定是主设备8、假设基准程序A在某计算机上的运行时间为100s,其中90s为CPU时间,其余为/O 时间。

若CPU速度提高50%,V/O速度不变,则运行基准程序A所耗费的时间是()。

2022年中南民族大学软件工程专业《数据库原理》科目期末试卷B(有答案)

2022年中南民族大学软件工程专业《数据库原理》科目期末试卷B(有答案)

2022年中南民族大学软件工程专业《数据库原理》科目期末试卷B(有答案)一、填空题1、数据管理技术经历了______________、______________和______________3个阶段。

2、____________和____________一起组成了安全性子系统。

3、在SQL Server 2000中,新建了一个SQL Server身份验证模式的登录账户LOG,现希望LOG在数据库服务器上具有全部的操作权限,下述语句是为LOG授权的语句,请补全该语句。

EXEC sp_addsrvrolemember‘LOG’,_____;4、完整性约束条件作用的对象有属性、______和______三种。

5、数据模型是由______________、______________和______________三部分组成。

6、设在SQL Server 2000环境下,对“销售数据库”进行的备份操作序列如下图所示。

①出现故障后,为尽可能减少数据丢失,需要利用备份数据进行恢复。

首先应该进行的恢复操作是恢复_____,第二个应该进行的恢复操作是恢复_____。

②假设这些备份操作均是在BK设备上完成的,并且该备份设备只用于这些备份操作,请补全下述恢复数据库完全备份的语句RESTORE_____FROM BKWITH FILE=1,_____;7、数据库系统在运行过程中,可能会发生各种故障,其故障对数据库的影响总结起来有两类:______和______。

8、已知系(系编号,系名称,系主任,电话,地点)和学生(学号,姓名,性别,入学日期,专业,系编号)两个关系,系关系的主码是______________,系关系的外码是______________,学生关系的主码是______________,外码是______________。

9、某事务从账户A转出资金并向账户B转入资金,此操作要么全做,要么全不做,为了保证该操作的完整,需要利用到事务性质中的_____性。

中南民族大学生物医学工程学院简介

中南民族大学生物医学工程学院简介
理、模拟电子技术、数字电子技术、生物医学电子学、电工技术、电 气安全检测技术;微机原理与应用、技术、嵌入式系统;计算机基础、 高级语言程序设计、操作系统、数据库原理;信号与系统、数字信号 处理、图像处理、自动控制原理;生物医学检测与传感技术、人体运 动信息检测与处理;医用化学、生物医学工程材料、人体解剖学、人 体生理学、医疗器械工程概论;医用检测仪器、治疗仪器、成像仪器、 康复仪器、医疗器械设计、医疗器械监督管理法规、安全工程与产品 质量管理。
中国知识资源总库——系列数据库、 ()数据 库、 数据库、 科学文献库
3)教师队伍 由医学仪器、电子技术、生物医学信号处理和基础课等4个
教研室组成
共26名教师,其中教授5人,副教授9人,讲师11人,助教1 人;具有博士学位15人,硕士学位10人;3人分别获国务 院政府特殊津贴、国家民委有突出贡献专家奖和湖北省政 府津贴,校学科带头人4人,校重点骨干教师2人,校优秀 青年教师2人。
教师队伍中硕士生导师13人,主要从事医学信息检测与仪器、 生物系统建模与仿真、医学成像与图像处理、神经工程等 4个方向。
4)学生队伍
为国家和民族地区培养了近1500名种层次专 门技术人才,其中本科生1300多人、硕士 研究生150余人。 60%来自我国的少数民族 地区。
5)建设基础 2001年该学科被国家民委确定为重点学科
实践教学环节包括:
金工实习、电子技术实训、电子电路 课程设计、医疗仪器课程设计、创新 创业课程、生产实习、毕业设计。
2、医学信息工程(方向) 修业年限为4年 毕业生授予工学学士学位
课程设置包括:
离散数学、微机原理与接口技术、高级语言程 序设计、计算机网络与通信技术、数据库原理、 数据结构、软件工程、模拟电路、数字电路、信 号与系统、生物医学信号处理、计算机图形学、 医学图像处理、医学模式识别、信息系统分析与 设计、医学信息系统、决策支持系统、生物学导 论、生物医学工程概论、解剖生理学、临床医学 概论

(002)(任务书-全国邮政编码查询 )(11065015)(刘威) 2

(002)(任务书-全国邮政编码查询 )(11065015)(刘威) 2

中南民族大学计算机科学学院本科课程设计任务书设计名称:全国邮政编码查询指导教师:孙翀下达时间: 2013-9-27学生姓名:刘威学号: 11065015年级专业: 2011级软件工程一、课程设计的基本要求利用《数据结构》课程的相关知识完成一个具有一定难度的综合设计题目,利用C/C++语言进行程序设计,并规范地完成课程设计报告。

通过课程设计,巩固和加深对线性表、栈、队列、字符串、树、图、查找、排序等理论知识的理解;掌握现实复杂问题的分析建模和解决方法(包括问题描述、系统分析、设计建模、代码实现、结果分析等);提高利用计算机分析解决综合性实际问题的基本能力。

具体要求如下:1、对现实复杂问题中的数据对象特性及组织方法进行分析和研究,设计适当的数据逻辑结构、存贮结构以及相应运算操作,把现实世界问题建模转化为计算机内部表示并进行处理。

2、采取模块化方式进行程序设计,要求程序的功能设计、数据结构设计及整体结构设计合理。

学生也可根据自己对题目的理解增加新的功能模块(视情况可另外加分)。

3、系统以菜单界面方式(至少采用文本菜单界面,如能采用图形菜单界面更好)工作,运行界面友好,演示程序以用户和计算机的对话方式进行,利用文件进行数据的提取与存储。

4、程序算法说明清晰,理论分析与计算正确,运行情况良好,实验测试数据无误,容错性强(能对错误输入进行判断控制)。

5、编程风格良好(包括缩进、空行、适当注释、变量名和函数名见名知意,程序容易阅读等);6、写出规范的课程设计报告,具体要求见相关说明文档。

二、课程设计的主要内容题目描述:判断2个同学是否是老乡功能要求及说明:(1)建立全国的行政分类(到县市一级)的树形结构,树节点中要包含邮政编码信息;(2)输入任意地名,遍历树形结构显示其邮政编码;(3)输入任意邮政编码,要给出详细地址。

三、课程设计的进程安排1.2013年9月27日:布置并下达课程设计题目。

2.2013年10月8日之前:联系指导教师,理解课程设计题目及相关要求,查阅相关资料,进行课程设计(地点:9-503,9-504)。

生物医学工程专业Windows编程技术教学方法

生物医学工程专业Windows编程技术教学方法

基金项目:国家自然科学基金资助项目:81271659。

作者简介:高军峰(1973-),讲师,研究方向为生物医学信号处理。

生物医学工程专业“Windows 编程技术”教学方法探讨高军峰[1]熊义君[2]([1]中南民族大学生物医学工程学院湖北·武汉430074;[2]东湖学院湖北·武汉430074)中图分类号:G642.4文献标识码:A文章编号:1672-7894(2013)09-0068-02摘要“Windows编程技术”是生物医学工程专业一门重要的专业课,让学生学会将理论知识转化为解决本专业实际问题的能力,是这门课的重点。

我们对理论和实践教学两个方面的教学方法和经验进行了探讨,经过几年的教学实施,这些方法取得了良好的教学效果。

关键词Windows编程MFC生物医学工程教学方法Teaching Method of Windows Program Course for Biomedical Engineering Specialty //GaoJunfeng[1],XiongYi-jun[2]Abstract Windowsprogramisanimportantcourseforbiomedi-calengineeringspecialty.Howtochangethetheoreticalknowl-edgeintotheabilityofsolvingprobleminbiomedicalengineeringfieldisveryimportant.Teachingmethodsoftheoryandpracticeteachingaregiven,whicharehelpfulforstudents.Satisfiedteachingeffectisacquiredinpastyears.Key words WindowsProgram;MFC;biomedicalengineering;teachingmethod随着科技的发展,越来越多的可视化系统的开发研究对大学本科生的可视化程序开发的能力提出了更大更新的要求。

基于数据模型的编程应用

基于数据模型的编程应用

基于数据模型的编程应用邢光林;魏文刚【摘要】引入了数据模型的概念、原理和方法,给出了基于数据模型的编程应用实例,证明了该系统能用同一数据模型与不同用户数据进行绑定来提取所需数据的通用性.%In this paper, data model concept, principle and method are introduced. A programming application instance -- a rendering system of electrical sounding curve graphs is illustrated. The versatility of the system is demonstrated by the same data model binding with different user data to extract the required data.【期刊名称】《中南民族大学学报(自然科学版)》【年(卷),期】2012(031)004【总页数】4页(P113-115,131)【关键词】数据模型;编程应用;代码可复用性【作者】邢光林;魏文刚【作者单位】中南民族大学计算机科学学院,武汉430074;中南民族大学计算机科学学院,武汉430074【正文语种】中文【中图分类】TP309面对不同的客户,就是面对不同的需求和不同的数据.软件必须能够容忍并处理这些变化,才可能支持多种客户数据结构,从而满足多个客户的多种数据结构的需求.数据模型可实现对多种客户数据的统一分类管理,使得原本针对每一种客户数据的编程提升到针对一类数据编程,从而使编程的效率和接口的复用性得到提升.1 数据模型数据模型是对客观事物及其联系的逻辑组织描述[1,2],由多种抽象数据结构和通过抽象数据结构访问用户数据的接口组成,如图1所示.基于数据模型编程,实质上就是调用数据模型提供的接口取得用户数据表以及用户数据表字段[3,4].如图2所示,从众多用户数据抽象出的通用数据结构结合相关数据操纵接口,即得到能够统一管理众多数据的数据模型.图1数据模型对多种数据结构的抽象实现Fig.1 Data model abstract implementation for various kinds of data structure2 基于数据模型的存取数据接口流程在需要用同一套软件满足不同客户需求的时候,接口的复用性显得格外重要.对接口复用性要求最高的部分,是负责数据存取的接口.下面重点探讨如何基于“数据模型”实现存取数据接口的流程.图2 基于数据模型编程原理Fig.2 Programming principle based on data model在面对不同的客户的不同数据库时,要使接口不变,接口中的SQL语句必须改变.也就是说,需要封装一个单独的子接口来专门负责得到SQL语句.或者,至少需要一套单独的接口来取得不同数据库中的数据表名和字段名,然后对这些数据表名和字段名进行组装,从而得到不同的SQL语句.存取数据接口的实现流程如图3所示.3 基于数据模型的编程实例在地质勘探行业,专业人员需要对勘探得到的海量数据进行管理和分析,以辅助研究地质构造、各种矿物勘探和预测地质灾害等[5,6].电测深法[7,8]是地球物理勘探中电法勘探的一种,下面以此为例来探讨基于数据模型的编程应用.先构建数据模型,数据模型实例如表1所示.图3 存取数据接口的一种实现流程Fig.3 Flowchart of data access表1 原始数据的数据模型Tab.1 Data model of meta data数据模型表名称PHY_ORIDATA序号字段名中文名类型长度1 WORKINX 工区索引号L 9 2 SECTINX 剖面索引号 L 9 3 DOTINX 测点索引号 L 9 4 X横坐标 D 12.3 5纵坐标D 12.3 6 Z竖坐标 D 12.3 Y 7 VALUE 测试值D 12.3用户数据结构实例如表2所示.表2 电阻率测深原始数据表Tab.2 Meta data table of electrical sounding数据表名称GeoPhyEleclSdOriData序号字段名称字段别名字段类型字段长度允许为空是否主键1 OBSPINX 测点索引号VARCHAR2 12 M 1 2 LINNO 线号NUMBER 9,1 ——3 DOTNO 点号 NUMBER 9,1 ——4 X X坐标 NUMBER 13,3 0 —5 Y坐标 NUMBER 13,3 0 —6 GDJJ 供电极距 NUMBER 6,1 0 —7 SDZL 视电阻率 NUMBER 13,3 0 —8 WORKINX 工区索引号 NUMBER 9 ——Y…………………数据模型和用户数据结构绑定关系实例如表3所示.表3 电阻率测深专业数据模型和用户表绑定关系Tab.3 Binding relation of electrical sounding data model and user table专业信息控制表字段信息绑定用户表字段名绑定用户表中文名绑定用户表英文名PHY_ORIDATAPHY_ELEC(电测深)序号字段名中文名类型长度1 WORKINX 工区索引号 L9GeoPhyElec工区索引号2 SECTINX 剖面索引号 L 9SdOriData线号3 DOTINX 测点索引号 L 9电阻率测深原始数据表点号………… … …相关功能接口实现之后,按照图4所示的操作说明将数据模型和用户数据绑定,然后调用功能接口,便可以实现对不同用户的数据的存取等各种操作.图4 数据模型和用户数据的绑定操作说明Fig.4 Binding operation of data model and user data从图4中可以很清楚地看到数据模型表与用户表的对应关系以及数据模型字段和用户表字段的对应关系.利用这种对应关系,结合不同的专业,便可实现对用户数据的访问.针对不同的用户,将系统当前使用的数据库更换为该用户的数据库之后,只需为该用户配置相似的数据模型并将数据模型的相关信息存放在该用户的数据库中供系统使用即可.4 结语为了有效地管理众多软件客户的各种数据,引入了数据模型的概念,对数据模型的原理和实现方法作了简介,并给出了具体的基于数据模型的编程应用.基于数据模型开发的软件对所有用户是通用的,针对不同的用户,仅需为其单独配置一套数据模型,而不需要为每一个客户单独提供一套软件,这在一定程度上降低了软件开发的成本.参考文献【相关文献】[1]Peuquct D J,Duan N.An event-based spatial temporal datamodel(ESTDM)fortemporalanalysis of geographical data[J].International Journal of Geographical Information Systems,1995,9(1):7-24.[2]Worboys M F.A unified model for spatial and temporal information[J].The Computer Journal,2009,33(4):400-402.[3]吴慧欣.三维GIS空间数据模型及可视化技术研究[D].兰州:西北工业大学博士学位论文,2007.[4]张林.基础地质数据管理与三维地质模型构建方法研究[D].西安:西安科技大学,2007. [5]底青云,王光杰,安志国,等.南水北调西线千米深长隧洞围岩构造地球物理勘探[J].地球物理学报,2006,49(6):1836-1842.[6]滕吉文.石油地球物理勘探的发展空间与自主创新[J].石油物探,2007,46(3):214-225. [7]李大虎,何强,邵昌盛,等.综合地球物理勘探在青川县城区活动断层探测中的应用[J].成都理工大学学报:自然科学版,2010,37(6):666-672.[8]杨宏章.电法在非洲找水中的应用[J].物探与化探,2009,33(6):660-662.。

  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表达式求值实验类型设计型综合型创新型实验目的或要求实验目的:通过上机实践,使学生进一步掌握栈这种特殊线性表的逻辑定义、存储结构以及初始化栈、入栈、出栈、栈判空等基本操作的具体实现,使学生能够应用栈的思想解决相关实际问题。

相关文档
最新文档