实验 线性表 实验目的 1.掌握用 Turbo C2.0上机调试线性表的基本方法。 2.掌握线性表基本操作,插入、删除、査找,以及线性表合并等运算 在顺序存储结构和连接存储结构上的运算 实验内容 1.线性表基本操作的实现 [问题描述]当我们要在线性表的顺序存储结构上的第i个位置上插入 一个元素时,必须先将线性表中第i个元素之后的所有元素依次后移一个位 置,以便腾空一个位置,再把新元素插入到该位置。若欲删除第i个元素时, 也必须把第i元素之后的所以元素前移一个位置 基本要求]要求生成线性表时,可以键盘上读取元素,用顺序存储结 构和连式存储结构实现存储。 [实现提示]要实现基本操作可用已实现的基本操作,也可设计简单的 算法实现 [算法实现] 2.约瑟夫问题 问题描述]设有n个人围坐一圈,先从某个人开始报数,数m到的人出 列,接着从出列的下一个开始重新报数,数到的M人又出列,一直下去直到 所有的人出列,试设计确定他们的出列次序序列的程序 [基本要求]选择单向循环链表作为存储结构模拟过程,并依次输出出列 各人的编号 实现提示程序运行之后,首先要求用户初始报数的上限值,可以n<=30, 此题中循环链表可不设头接点,而且必须清楚空表和非空表的界限。如: n=8m斗4时,若从第一个人开始,设没各人的编号依次1、2、3、4.开始 报数,则得到的出列次序为48521376。 [程序实现] 3.一元多项式简单计算 [问题描述]设计一个一元多项式的简单计算器 基本要求]一元多项式的基本功能: (1)输入并建立多项式 (2)输出多项式 (3)两个多项式相加减,相乘除,建立并输出多项式 实现提示可选择带头接点的单向循环链表或单项链表存储多项式,头 接点可以存储多项式的参数如项数等。 [程序实现]利用单链表作为存储多项式的结构
实验一 线性表 一. 实验目的 1. 掌握用 Turbo C 2.0 上机调试线性表的基本方法。 2. 掌握线性表基本操作,插入、删除、查找,以及线性表合并等运算 在顺序存储结构和连接存储结构上的运算。 二. 实验内容 1. 线性表基本操作的实现 [问题描述] 当我们要在线性表的顺序存储结构上的第 i 个位置上插入 一个元素时,必须先将线性表中第 i 个元素之后的所有元素依次后移一个位 置,以便腾空一个位置,再把新元素插入到该位置。若欲删除第 i 个元素时, 也必须把第 i 元素之后的所以元素前移一个位置。 [基本要求] 要求生成线性表时,可以键盘上读取元素,用顺序存储结 构和连式存储结构实现存储。 [实现提示] 要实现基本操作可用已实现的基本操作,也可设计简单的 算法实现 [算法实现] 2.约瑟夫问题 [问题描述]设有 n 个人围坐一圈,先从某个人开始报数,数 m 到的人出 列,接着从出列的下一个开始重新报数,数到的 M 人又出列,一直下去直到 所有的人出列,试设计确定他们的出列次序序列的程序。 [基本要求]选择单向循环链表作为存储结构模拟过程,并依次输出出列 各人的编号。 [实现提示]程序运行之后,首先要求用户初始报数的上限值,可以 n<=30, 此题中循环链表可不设头接点,而且必须清楚空表和非空表的界限。如: n=8,m=4 时,若从第一个人开始,设没各人的编号依次 1、2、3、4…开始 报数,则得到的出列次序为 4 8 5 2 1 3 7 6。 [程序实现]: 3. 一元多项式简单计算 [问题描述] 设计一个一元多项式的简单计算器 [基本要求]一元多项式的基本功能: (1) 输入并建立多项式 (2) 输出多项式 (3) 两个多项式相加减,相乘除,建立并输出多项式 [实现提示]可选择带头接点的单向循环链表或单项链表存储多项式,头 接点可以存储多项式的参数如项数等。 [程序实现]利用单链表作为存储多项式的结构