社区
数据结构与算法
帖子详情
给出m个数,求这m个数能够组成的最长的等差数列
绿色夹克衫
2012-08-21 04:56:31
原题
http://www.51nod.com/question/index.html#!questionId=79
只想到一个O(n^2)的办法,空间也是O(n^2),可见算不了太大的,求优化的方法,无论时间或空间。
btw,感觉还是靠分治有出路
...全文
420
11
打赏
收藏
给出m个数,求这m个数能够组成的最长的等差数列
原题 http://www.51nod.com/question/index.html#!questionId=79 只想到一个O(n^2)的办法,空间也是O(n^2),可见算不了太大的,求优化的方法,无论时间或空间。 btw,感觉还是靠分治有出路
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
11 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
绿色夹克衫
2012-08-22
打赏
举报
回复
我也找了一篇论文
http://www.cs.uiuc.edu/~jeffe/pubs/pdf/arith.pdf
后面分治的方法没看懂。
另外空间上有可能优化一下么?类似滚动数组之类的,时间上还是可以接受的,但空间有点大。
[Quote=引用 4 楼 的回复:]
别看了。一般情况下n^2被证明是最优了。
[/Quote]
绿色夹克衫
2012-08-22
打赏
举报
回复
嗯,DP确实可以解。
[Quote=引用 2 楼 的回复:]
最标准的动态规划问题
[/Quote]
FancyMouse
2012-08-22
打赏
举报
回复
别看了。一般情况下n^2被证明是最优了。
绿色夹克衫
2012-08-22
打赏
举报
回复
配上Fancymouse大牛的解说,我能明白这个算法的思路了,我自己琢磨的分治总是在想如何找最长的,人家的方法就是干脆全找出来,你看够不够长。因为鸽巢原理,所以总能在一边找到长度为k/2的序列,并且通过证明,保证数量不会太多。这个思想值得学习,以后碰到需要解决的问题可以多一个思路。
绿色夹克衫
2012-08-22
打赏
举报
回复
论文中说的这个问题是个啥问题?
Another problem related to finding largest arithmetic sequences is finding an element of a multiset with largest multiplicity.
这些单词虽然配上词霸都能认得,但放在一起竟然看不懂。
feathersky
2012-08-22
打赏
举报
回复
最标准的动态规划问题 记录 (方差,数列个数,当前数列最大值)
feathersky
2012-08-22
打赏
举报
回复
最标准的动态规划问题
I'm Daniel Du
2012-08-22
打赏
举报
回复
[Quote=引用 8 楼 的回复:]
关键是看他第一个问题转化就没看懂,后面看那个复杂度貌似就很不容易理解,反正阅读这类英文的论文,对我来说还是个挺大的障碍。
引用 7 楼 的回复:
另外空间上有可能优化一下么?类似滚动数组之类的,时间上还是可以接受的,但空间有点大。
引用 4 楼 的回复:
别看了。一般情况下n^2被证明是最优了。
那个啊,他找的是所有长度>=k的ar……
[/Quote]
水一个,这个论文的字体太小了(我指的参考文献部分),我开到150%都看不清>_<......
绿色夹克衫
2012-08-22
打赏
举报
回复
关键是看他第一个问题转化就没看懂,后面看那个复杂度貌似就很不容易理解,反正阅读这类英文的论文,对我来说还是个挺大的障碍。
[Quote=引用 7 楼 的回复:]
另外空间上有可能优化一下么?类似滚动数组之类的,时间上还是可以接受的,但空间有点大。
引用 4 楼 的回复:
别看了。一般情况下n^2被证明是最优了。
那个啊,他找的是所有长度>=k的ar……
[/Quote]
FancyMouse
2012-08-22
打赏
举报
回复
[Quote=引用 6 楼 的回复:]
我也找了一篇论文
http://www.cs.uiuc.edu/~jeffe/pubs/pdf/arith.pdf
后面分治的方法没看懂。
另外空间上有可能优化一下么?类似滚动数组之类的,时间上还是可以接受的,但空间有点大。
引用 4 楼 的回复:
别看了。一般情况下n^2被证明是最优了。
[/Quote]
那个啊,他找的是所有长度>=k的arith progression。然后用lemma 2保证输出不会太大。
至于那个分治,他把数组分左右两半,两半都递归找出所有长度>=k/2(除了数组长度减半,这个k也减半)的a.p.,然后对于每一个找出的a.p.,看看再加上另一半的元素以后能不能伸展到>=k。
还是很好理解的,毕竟才2页的paper。
闲谈共视
2012-08-21
打赏
举报
回复
进不去这个社区啊 !!!需要你要请我加入 嘿嘿
想认识你一下 我的qq号是:1213932667
寻找
最长
的
等差数列
=100)
个数
,从中找出尽可能多的数使得他们
能够
组成
一个
等差数列
.
求
最长
的
等差数列
的长度.输入描述 Input Description第一行是一个整数n,接下来一行包括了n
个数
,每
个数
的绝对值不超过10000000.输出描述 Output ...
codevs【1006】
等差数列
=100)
个数
,从中找出尽可能多的数使得他们
能够
组成
一个
等差数列
.
求
最长
的
等差数列
的长度. 输入描述 第一行是一个整数n,接下来一行包括了n
个数
,每
个数
的绝对值不超过10000000. 输出描述 对于每个输入数据,输出你所...
3239.
最长
的
等差数列
给定n(1≤n≤100)
个数
,从中找出尽可能多的数使得他们
能够
组成
一个
最长
的
等差数列
。输出该
最长
等差数列
的长度。 注意:当n=1时,构成长度为1的
等差数列
。 输入格式 第 1 行:一个整数 T (1≤T≤10) 为测试数据组数。 ...
求
最长
等差数列
长度
Longest Consecutive Sequence ...LeetCode上面这道题是
求
最长
连续子序列。换种说法就是
求
公差为1的
最长
等差数列
。题目描述Given an unsorted array of integers, find the length of the long
1006
等差数列
给定n(1)
个数
,从中找出尽可能多的数使得他们
能够
组成
一个
等差数列
.
求
最长
的
等差数列
的长度. 输入描述 Input Description 第一行是一个整数n,接下来一行包括了n
个数
,每
个数
的绝对值不超过10000000. 输出描述 Output...
数据结构与算法
33,010
社区成员
35,327
社区内容
发帖
与我相关
我的任务
数据结构与算法
数据结构与算法相关内容讨论专区
复制链接
扫一扫
分享
社区描述
数据结构与算法相关内容讨论专区
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章