元素的个数,而通过特殊数据来标记输入数据的结束,实现这样的输入操作。
实验二、链表实验目的:实验目的:
熟悉链式表的逻辑特性、存储表示方法的特点和链式表的基本操作。
实验要求:实验要求:
了解并熟悉链式表的逻辑特性、存储表示方法和链式表的基本操作的实现和应用。
实验内容:实验内容:
编写程序实现下列的要求:1设学生成绩表中的数据元素为学生成绩(含姓名、成绩字段),实现这样的线性表的链式存储表示。2键盘输入若干个数据元素(用特殊数据来标记输入数据的结束),利用链表的基本操作(前插或后插算法),建立学生成绩单链表。3键盘输入关键字值x,打印出表中所有关键字值x的结点数据。(用于比较的关键字字段为分数)。4输入关键字值x,删除表中所有关键字值x的结点。(用于比较的关键字字段为分数)。5释放该链表(删除所有结点)。6若要求建立的学生成绩单链表为有序表,重新编写算法和程序实现前面的要求(3)。(用于比较的字段为分数)。
练习及思考题:练习及思考题:
(1)不同类型的数据元素所对应的链式表在类型定义和操作实现上有什么异同?(2)有头结点的链式表,有什么特点?
f《数据结构》实验课程大纲》
实验三、栈的应用实验目的:实验目的:
熟悉栈的逻辑特性、存储表示方法和栈的基本操作。
实验要求:实验要求:
了解并熟悉栈的逻辑特性、顺序和链式存储表示方法和栈的基本操作的实现和应用。
实验内容:实验内容:
1判断一个表达式中的括号(仅有一种括号,小、中或大括号)是否配对。编写并实现它的算法。2用不同的存储方法,求解上面的问题。3若表达式中既有小括号,又有大括号(或中括号),且允许互相嵌套,但不能交叉,写出判断这样的表达式是否合法的算法。如23(4523)为合法;23(4523、23(4523)为不合法。
练习及思考题:练习及思考题:
(1)求解八皇后问题,并将它扩展到
皇后问题。(2)递归问题是如何利用栈来求解的。
实验四、队列的应用实验目的:实验目的:
熟悉队列的逻辑特性、存储表示方法和队列的基本操作及应用。
实验要求:实验要求:
了解并熟悉队列的逻辑特性、顺序和链式存储表示方法和队列的基本操作的实现和应用。
实验内容:实验内容:
迷宫问题1定义不同存储类型的队列并实现队列的基本操作。2求解m
迷宫问题,输出解的个数及每个解。编写并实现它的算法。3用不同的存储方法,求解上面的问题。
练习及思考r