搜索
编程论坛
→
开发语言
→
『 C语言论坛 』
→ 高手们,给个思路就行,谢谢各位了.
标题:
高手们,给个思路就行,谢谢各位了.
只看楼主
冰兵
等 级:
新手上路
帖 子:19
专家分:0
注 册:2010-7-13
结帖率:
100%
楼主
已结贴
√
问题点数:20 回复次数:26
高手们,给个思路就行,谢谢各位了.
求数组最长的单调递增子序列,例如 a[10]={1,2,9,5,6,7,4,3,10} 上述数组中最长单调递增子序列是:1,2,5,6,7,8,10。
搜索更多相关主题的帖子:
思路
2010-07-26 20:47
vs_inzaghi
来 自:湖北
等 级:
职业侠客
威 望:
1
帖 子:303
专家分:364
注 册:2009-8-17
第
2
楼
得分:2
1,先找出数组中的最大数,记下该数的位置,假设为第a个
2,建个链表,
3,从第一个开始,一直到第a个,依次两两比较,凡是后一个数比前一个数大的(就是满足递增条件的),将前一个数写入链表,不满足条件的(就是后一个数比前一个数小的),跳过该较小数,继续比较
4,一直比较到第a个为止
5,输出链表,释放内存
以上是只有一个最大数的情况,若有n个最大数情况下,假设有3个10,位置分别为第a个,第b个,第c个(假设10为最大),那么就有三个递增序列,分别是第一个到第1个10之间的序列,第a+1个数到第2个10之间的序列,第b+1个数到第三个10之间的序列,也是依次按递增序列先后写进同一个链表,然后在链表中查找哪个序列最长,就输出那个序列,最后记得释放内存就可以了……
我个人的想法啊……呵呵……应该还有更好的……
我很懒,但我讨厌别人说我懒……
2010-07-26 21:48
encounter
来 自:扬州
等 级:
职业侠客
威 望:
2
帖 子:150
专家分:359
注 册:2010-7-24
第
3
楼
得分:2
第一个数放一数组里b[]
第二个数如果比第一个大,放第一个数组里b[], b++
第二个数如果比第一个小放c[],c++
下一个数如果满足大于前一个数就 放到所有的满足条件的数组里
不满足则放另一数组
最后比较b,c.......
我想 还是定义一个二维数a[][]组会简单一点,对应的就是a[1][],a[2][],a1++,a2++
最后比较a1,a2....就行了
明白否
ping nbtstat netstat tracert nat at ftp telnet..................
2010-07-26 22:14
vs_inzaghi
来 自:湖北
等 级:
职业侠客
威 望:
1
帖 子:303
专家分:364
注 册:2009-8-17
第
4
楼
得分:2
回复 3楼 encounter
这样确实好写点,不过用链表的话可以节约内存……呵呵……
我很懒,但我讨厌别人说我懒……
2010-07-26 23:36
encounter
来 自:扬州
等 级:
职业侠客
威 望:
2
帖 子:150
专家分:359
注 册:2010-7-24
第
5
楼
得分:2
回复 4楼 vs_inzaghi
我才上了10节C语言课
还逃了两节,就不懂链表的
可以教我吗
开学就得考2级
ping nbtstat netstat tracert nat at ftp telnet..................
2010-07-27 08:36
handong0823
等 级:
新手上路
帖 子:16
专家分:7
注 册:2010-7-22
第
6
楼
得分:1
写个思想吧:
b[i]<b[i+1];
i++;
a[j]=b[i];
2010-07-27 09:53
冰兵
等 级:
新手上路
帖 子:19
专家分:0
注 册:2010-7-13
第
7
楼
得分:0
回复 2楼 vs_inzaghi
谢谢啦
2010-07-27 10:40
冰兵
等 级:
新手上路
帖 子:19
专家分:0
注 册:2010-7-13
第
8
楼
得分:0
回复 3楼 encounter
谢谢啦
2010-07-27 10:40
冰兵
等 级:
新手上路
帖 子:19
专家分:0
注 册:2010-7-13
第
9
楼
得分:0
回复 6楼 handong0823
谢谢啦
2010-07-27 10:42
冰兵
等 级:
新手上路
帖 子:19
专家分:0
注 册:2010-7-13
第
10
楼
得分:0
回复 3楼 encounter
这个方法有问题,如果那样做的话,例题就不满足啊b[]中是1,2,9,6,7,8,10。c[]是5,4,3。
2010-07-27 10:48
27
1/3页
1
2
3
参与讨论请移步原网站贴子:
https://bbs.bccn.net/thread-314020-1-1.html
关于我们
|
广告合作
|
编程中国
|
清除Cookies
|
TOP
|
手机版
编程中国
版权所有,并保留所有权利。
Powered by
Discuz
, Processed in 1.829302 second(s), 7 queries.
Copyright©2004-2025, BCCN.NET, All Rights Reserved