- 0
- 0
- 约3.38千字
- 约 9页
- 2021-12-04 发布于天津
- 举报
______________________________________________________________________________________________________________
HUNAN UNIVERSITY
课程预习报告
题 目: 自组织线性表
学生姓名
学 生学号 2012080102
专 业班 级 计算机科学与技术班
精品资料
______________________________________________________________________________________________________________
完成日期
精品资料
______________________________________________________________________________________________________________
一、需求分析
自组织线性表根据估算的访问频率排列记录, 先放置请求频率最高的记录, 接下来是请
求频率次高的记录, 依此类推。 自组织线性表根据实际的记录访问模式在线性表中修改记录
顺序。 自组织线性表使用启发式规则决定如何重新排列线性表。 转置方法的基本原理是, 在
一次查找过程中,一旦找到一个记录,则将它与前一个位置的记录交换位置。这样,随着时
间的推移, 经常访问的记录将移动到线性表的前端, 而曾经频繁使用但以后不再访问的记录
将逐渐退至线性表的后面。
尽管一般情况下自组织线性表的效率可能没有查找数和已排序的线性表那么好, 但它也
有自身的优势。 它可以不必对线性表进行排序, 新记录的插入代价很小; 同时也比查找树更
容易实现,且无需额外的存储空间。
程序能达到的功能:
1 ) 从文件中读入一组汉字集合,用自组织线性表保存。
2 ) 在查询时,采用转置法调整自组织线性表的内容。
3 ) 从文件中依次读入需查询的汉字,把查询结果保存在文件中(如找到,返回比较的次数,如果没有找到,返回比较的次数)
二、概要设计
抽象数据类型
由于每个汉字都有唯一的第一元素和最后元素, 每个元素都有唯一的前驱和唯一的
后继所以我们用线性表来存储汉字, 且汉字是占两个字符位置, 因此我们用二维数组来
存储汉字。
ADT Array_2{
D={ai,j|ai,j ∈汉字字符 ,0≤ i≤ b1-1, 0 ≤ j≤ b2-1}
精品资料
______________________________________________________________________________________________________________
R={R1,R2}
R1={ai,j,ai+1,j|ai,j,ai+1,j ∈D,0 ≤ i≤ b1-2,0 ≤ j≤ b2-1}
R2={ai,j,ai,j+1|ai,j,ai,j+1 ∈D,0 ≤ i≤ b1-1,0 ≤ j≤ b2-2}
基本操作 P:
InitArray(A,b1,b2); // 初始化二维数组
DestroyArray (A); // 删除这个二维数组
ValueArray (A, e,index1,index2);
AssignArray (A, e, index1,index2);
} ADT Array_2
算法的基本思想
将文件中的汉字读入存储数组, 将需要查找的汉字输入查找数组中, 然后将查找数
组中的汉字依次与存储数组中的汉字进行比较, 若找到该汉字则进行转置操作, 交换该
汉字与前一个汉字的位置和比较次数, 若没有找到则输出存储数组的长度, 循环此操作
一直到查找数组中的汉字全部查找完毕。
程序流程
程序主要由三个步骤组成:
输入模块:读入两组汉字。
处理模块:计算两组汉字的个数,进行查找,互换操作。
输出模块:将查找结果输出。
三、详细设计
实现概要设计中的数据类型
倒置函数,查找到一次后,与前一个位置的数互换
精品资料
______________________________________________________________________________________________________________
bool flag;
void Inverse(char a[][2],int i,int j){
char temp=a[i][0];
a[i][0]=a[j][0];
a[j][0]=temp;
temp=a[i][1];
a[i][1]=a[j][1];
a[j][1]=temp;
}
查找汉字
int search(char a[][2],int size,char c[2]){
您可能关注的文档
- 实践单位评语.doc
- 实践报告总结优秀集锦.doc
- 实践报告:“吃的苦中苦,方为人上人”.doc
- 实践教学体系与内容.doc
- 实践教学总结报告.doc
- 实践活动剖析材料(多篇范文).doc
- 实践活动学习心得范文.doc
- 实践活动策划书模板(4篇).doc
- 实践部个人工作计划(多篇范文).doc
- 实际控制人证明.doc
- 宣贯培训(2026年)《NYT 4512-2025 非洲菊疫病抗性鉴定技术规程》.pptx
- 宣贯培训(2026年)《NYT 4514-2025木薯副产物综合利用导则》.pptx
- 宣贯培训(2026年)《NYT 4513-2025木薯全程机械化生产技术规范》.pptx
- 宣贯培训(2026年)《NYT 4470-2025全株玉米青贮质量分级》.pptx
- 宣贯培训(2026年)《NYT 4468-2025玉米供需平衡表编制规范》.pptx
- 宣贯培训(2026年)《NYT 4469-2025全株玉米青贮质量评定 综合指数法》.pptx
- 宣贯培训(2026年)《NYT 4474-2025东北地区玉米-大豆轮作生产技术规程》.pptx
- 宣贯培训(2026年)《NYT 4472-2025玉米耐盐碱鉴定评价技术规程》.pptx
- 宣贯培训(2026年)《NYT 4473-2025玉米抗旱性鉴定评价技术规程》.pptx
- 宣贯培训(2026年)《NYT 4478-2025甘薯收获技术规程》.pptx
原创力文档

文档评论(0)