![](https://img-blog.csdnimg.cn/20190918140012416.png?x-oss-process=image/resize,m_fixed,h_224,w_224)
《数据结构》1 顺序表
sdutacm
鹏不是这个朋
本 sdut 硕 szu
展开
-
顺序表应用7:最大子段和之分治递归法
Description给定n(1<=n<=50000)个整数(可能为负数)组成的序列a[1],a[2],a[3],…,a[n],求该序列如a[i]+a[i+1]+…+a[j]的子段和的最大值。当所给的整数均为负数时定义子段和为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。注意:本题目原创 2020-09-27 10:43:10 · 191 阅读 · 0 评论 -
顺序表应用8:最大子段和之动态规划法
Description给定n(1<=n<=100000)个整数(可能为负数)组成的序列a[1],a[2],a[3],…,a[n],求该序列如a[i]+a[i+1]+…+a[j]的子段和的最大值。当所给的整数均为负数时定义子段和为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。注意:本题原创 2020-09-27 09:45:22 · 95 阅读 · 0 评论 -
顺序表应用3:元素位置互换之移位算法
Description一个长度为len(1<=len<=1000000)的顺序表,数据元素的类型为整型,将该表分成两半,前一半有m个元素,后一半有len-m个元素(1<=m<=len),借助元素移位的方式,设计一个空间复杂度为O(1)的算法,改变原来的顺序表,把顺序表中原来在前的m个元素放到表的后段,后len-m个元素放到表的前段。注意:先将顺序表元素调整为符合要求的内容后,再做输出,输出过程只能用一个循环语句实现,不能分成两个部分。Input第一行输入整数n,代表下面有n行原创 2020-09-25 13:32:14 · 100 阅读 · 0 评论 -
顺序表应用4:元素位置互换之逆置算法
这道题和顺序表应用4-2:元素位置互换之逆置算法(数据改进)的算法没差什么。Description一个长度为len(1<=len<=1000000)的顺序表,数据元素的类型为整型,将该表分成两半,前一半有m个元素,后一半有len-m个元素(1<=m<=len),设计一个时间复杂度为O(N)、空间复杂度为O(1)的算法,改变原来的顺序表,把顺序表中原来在前的m个元素放到表的后段,后len-m个元素放到表的前段。注意:先将顺序表元素调整为符合要求的内容后,再做输出,输出过程只能用一原创 2020-09-24 20:52:34 · 154 阅读 · 0 评论 -
数据结构上机测试1:顺序表的应用
Description在长度为n(n<1000)的顺序表中可能存在着一些值相同的“多余”数据元素(类型为整型),编写一个程序将“多余”的数据元素从顺序表中删除,使该表由一个“非纯表”(值相同的元素在表中可能有多个)变成一个“纯表”(值相同的元素在表中只能有一个)。Input第一行输入表的长度n;第二行依次输入顺序表初始存放的n个元素值。Output第一行输出完成多余元素删除以后顺序表的元素个数;第二行依次输出完成删除后的顺序表元素。SampleInput125 2 5 3 3 4原创 2020-09-24 20:23:56 · 233 阅读 · 0 评论 -
顺序表应用6:有序顺序表查询
Description顺序表内按照由小到大的次序存放着n个互不相同的整数,任意输入一个整数,判断该整数在顺序表中是否存在。如果在顺序表中存在该整数,输出其在表中的序号;否则输出“No Found!"。Input第一行输入整数n (1 <= n <= 100000),表示顺序表的元素个数;第二行依次输入n个各不相同的有序非负整数,代表表里的元素;第三行输入整数t (1 <= t <= 100000),代表要查询的次数;第四行依次输入t个非负整数,代表每次要查询的数值。保证原创 2020-09-24 15:42:31 · 163 阅读 · 0 评论 -
顺序表应用4-2:元素位置互换之逆置算法(数据改进)
Description 一个长度为len(1<=len<=1000000)的顺序表,数据元素的类型为整型,将该表分成两半,前一半有m个元素,后一半有len-m个元素(1<=m<=len),设计一个时间复杂度为O(N)、空间复杂度为O(1)的算法,改变原来的顺序表,把顺序表中原来在前的m个元素放到表的后段,后len-m个元素放到表的前段。 注意:交换操作会有多次,每次交换都是在上次交换完成后的顺序表中进行。Input 第一行输入整数len(1<=len<=1000000)原创 2020-09-24 11:20:00 · 210 阅读 · 0 评论 -
ACM《数据结构》顺序表
顺序表应用2:多余元素删除之建表算法Description一个长度不超过10000数据的顺序表,可能存在着一些值相同的“多余”数据元素(类型为整型),编写一个程序将“多余”的数据元素从顺序表中删除,使该表由一个“非纯表”(值相同的元素在表中可能有多个)变成一个“纯表”(值相同的元素在表中只保留第一个)。要求:1、必须先定义线性表的结构与操作函数,在主函数中借助该定义与操作函数调用实现问题功能;2、本题的目标是熟悉在顺序表原表空间基础上建新表的算法,要在原顺序表空间的基础上完成完成删除,建表过程不得原创 2020-09-23 14:18:52 · 163 阅读 · 0 评论