数据结构(顺序表)
文章平均质量分 80
NTrinity
这个作者很懒,什么都没留下…
展开
-
顺序表应用1:多余元素删除之移位算法
Problem Description 一个长度不超过10000数据的顺序表,可能存在着一些值相同的“多余”数据元素(类型为整型),编写一个程序将“多余”的数据元素从顺序表中删除,使该表由一个“非纯表”(值相同的元素在表中可能有多个)变成一个“纯表”(值相同的元素在表中只保留第一个)。 要求: 1、必须先定义线性表的结构与操作函数,在主函数中借助该定义与操作函数调用实现问题功能原创 2017-10-12 21:09:18 · 235 阅读 · 0 评论 -
顺序表应用2:多余元素删除之建表算法
Problem Description 一个长度不超过10000数据的顺序表,可能存在着一些值相同的“多余”数据元素(类型为整型),编写一个程序将“多余”的数据元素从顺序表中删除,使该表由一个“非纯表”(值相同的元素在表中可能有多个)变成一个“纯表”(值相同的元素在表中只保留第一个)。 要求: 1、必须先定义线性表的结构与操作函数,在主函数中借助该定义与操作函数调用实现问题功能原创 2017-10-12 21:18:08 · 156 阅读 · 0 评论 -
顺序表应用3:元素位置互换之移位算法
Problem Description 一个长度为len(1数据元素的类型为整型,将该表分成两半,前一半有m个元素,后一半有len-m个元素(1 注意:先将顺序表元素调整为符合要求的内容后,再做输出,输出过程只能用一个循环语句实现,不能分成两个部分。 Input 第一行输入整数n,代表下面有n行输入; 之后输入n行,每行先输入整数len与整数m(分别代表本表的元素总数与前半表的元素个原创 2017-10-12 21:19:36 · 257 阅读 · 0 评论 -
顺序表应用4-2:元素位置互换之逆置算法(数据改进)
Problem Description 一个长度为len(1 注意:交换操作会有多次,每次交换都是在上次交换完成后的顺序表中进行。 Input 第一行输入整数len(1 第二行输入len个整数,作为表里依次存放的数据元素; 第三行输入整数t(1 之后t行,每行输入一个整数m(1 Output 输出一共t行,每行依次输出本次交换完成后顺序表里所有元素。 E原创 2017-10-12 21:20:43 · 229 阅读 · 0 评论 -
顺序表应用5:有序顺序表归并
Problem Description 已知顺序表A与B是两个有序的顺序表,其中存放的数据元素皆为普通整型,将A与B表归并为C表,要求C表包含了A、B表里所有元素,并且C表仍然保持有序。 Input 输入分为三行: 第一行输入m、n(1 第二行输入m个有序的整数,即为表A的每一个元素; 第三行输入n个有序的整数,即为表B的每一个元素; Output 输出为一原创 2017-10-12 21:22:21 · 279 阅读 · 0 评论 -
顺序表应用6:有序顺序表查询
Problem Description 顺序表内按照由小到大的次序存放着n个互不相同的整数,任意输入一个整数,判断该整数在顺序表中是否存在。如果在顺序表中存在该整数,输出其在表中的序号;否则输出“No Found!"。 Input 第一行输入整数n (1 第二行依次输入n个各不相同的有序非负整数,代表表里的元素; 第三行输入整数t (1 第四行依次输入t个非负整数,代原创 2017-10-12 21:23:41 · 244 阅读 · 0 评论 -
顺序表应用8:最大子段和之动态规划法
Problem Description 给定n(1负数时定义子段和为0,依此定义,所求的最优值为: Max{0,a[i]+a[i+1]+…+a[j]},1 注意:本题目要求用动态规划法求解,只需要输出最大子段和的值。 Input 第一行输入整数n(1 第二行依次输入n个整数,对应顺序表中存放的每个数据元素值。 Output 输出所求的最大子段和原创 2017-10-12 21:26:39 · 257 阅读 · 0 评论 -
顺序表应用7:最大子段和之分治递归法
Problem Description 给定n(1当所给的整数均为负数时定义子段和为0,依此定义,所求的最优值为: Max{0,a[i]+a[i+1]+…+a[j]},1<=i<=j<=n。 例如,当(a[1],a[2],a[3],a[4],a[5],a[6])=(-2,11,-4,13,-5,-2)时,最大子段和为20。 注意:本题目要求用分治递归法求解,除了需要输出最大子段原创 2017-10-12 21:24:54 · 259 阅读 · 0 评论