Charles
Thinking low level, Coding high level
C++博客
首頁(yè)
新隨筆
聯(lián)系
聚合
管理
posts - 71, comments - 41, trackbacks - 0
尋找最長(zhǎng)遞增子序列
注意,不一定連續(xù)遞增
template
<
class
?T
>
?
int
?FindLIS(T?
*
arr,?
int
?len,?T?
*&
result)
{
????
int
?
*
last?
=
?
new
?
int
[len]();
????
int
?
*
track?
=
?
new
?
int
[len]();
????
int
?left,?right,?mid;
????
int
?iCurrMaxLen?
=
?
0
;
????
if
?(len?
<
?
1
)
????
{
????????result?
=
?
0
;
????????
return
?
0
;
????}
????result?
=
?
0
;
????last[
0
]?
=
?
0
;
????
for
?(
int
?i?
=
?
1
;?i?
<
?len;?i
++
)?
????
{
????????
if
?(arr[last[iCurrMaxLen]]?
<
?arr[i])
????????
{
????????????track[i]?
=
?last[iCurrMaxLen];
????????????last[
++
iCurrMaxLen]?
=
?i;
????????????
continue
;
????????}
????????left?
=
?
0
;
????????right?
=
?iCurrMaxLen;
????????
while
?(left?
<
?right)
????????
{
????????????mid?
=
?(left?
+
?right)?
/
?
2
;
????????????arr[last[mid]]?
<
?arr[i]?
?
?left?
=
?mid?
+
?
1
?:?right?
=
?mid;
????????}
????????
if
?(
/**/
/*
left?<=?right?&&?
*/
arr[i]?
<
?arr[last[left]])?
????????
{
????????????
if
?(left?
>
?
0
)?
????????????????track[i]?
=
?last[left?
-
?
1
];
????????????last[left]?
=
?i;
????????}
????}
//
for
????
for
?(left?
=
?iCurrMaxLen,?right?
=
?last[iCurrMaxLen];?left?
>=
?
0
;?left
--
,?right?
=
?track[right])
????????last[left]?
=
?arr[right];
????
if
?(track)
????
{
????????delete?[]?track;
????????track?
=
?
0
;
????}
????result?
=
?last;
????last?
=
?
0
;
????
return
?iCurrMaxLen?
+
?
1
;
}
稍微解釋一下,last中存的是所有i長(zhǎng)度子序列中l(wèi)ast[i]最小的那個(gè)值。而track中記錄它的前一個(gè)值。這樣可以沿著track找回去。
posted on 2006-11-22 17:50
Charles
閱讀(1497)
評(píng)論(2)
編輯
收藏
引用
所屬分類:
面試小算法
FeedBack:
#
re: 尋找最長(zhǎng)遞增子序列
2006-11-28 11:58 |
踏雪赤兔
寫(xiě)得有點(diǎn)復(fù)雜,可以用STL簡(jiǎn)化代碼。不過(guò)看得出,還是O(NlogN)的算法
回復(fù)
更多評(píng)論
#
re: 尋找最長(zhǎng)遞增子序列
2006-11-28 16:18 |
Charles
呵呵,因?yàn)檫@是準(zhǔn)備面試用的,所以不能寫(xiě)成STL版的
回復(fù)
更多評(píng)論
刷新評(píng)論列表
只有注冊(cè)用戶
登錄
后才能發(fā)表評(píng)論。
【推薦】100%開(kāi)源!大型工業(yè)跨平臺(tái)軟件C++源碼提供,建模,組態(tài)!
相關(guān)文章:
Integer Partition
數(shù)1的個(gè)數(shù)
Fibonacci
簡(jiǎn)單打印內(nèi)存的小玩意兒
矩陣式螺旋輸出
求最大公約數(shù)與最小公倍數(shù)
數(shù)內(nèi)置類型的bit數(shù)
計(jì)算Int最大最小值
兩個(gè)堆棧模擬一個(gè)隊(duì)列
檢測(cè)補(bǔ)碼表示
網(wǎng)站導(dǎo)航:
博客園
IT新聞
BlogJava
博問(wèn)
Chat2DB
管理
Copyright ©2025 Charles Powered By:
博客園
模板提供:
滬江博客
<
2025年6月
>
日
一
二
三
四
五
六
25
26
27
28
29
30
31
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
1
2
3
4
5
決定開(kāi)始寫(xiě)工作日記,記錄一下自己的軌跡...
常用鏈接
我的隨筆
我的評(píng)論
我參與的隨筆
留言簿
(4)
給我留言
查看公開(kāi)留言
查看私人留言
隨筆分類
(70)
Helper Utility(1)
讀書(shū)作筆記(3)
發(fā)泄(3)
面試小算法(27)
拿來(lái)主義(25)
隨筆(10)
一般人兒我不告訴他(1)
隨筆檔案
(71)
2008年3月 (1)
2008年2月 (1)
2007年7月 (3)
2007年3月 (3)
2007年1月 (18)
2006年12月 (16)
2006年11月 (29)
charles推薦訪問(wèn)
Code Project
Linux Journal
Linux man pages
Single UNIX Specification
電子書(shū)1
電子書(shū)2
電子書(shū)3
搜索
積分與排名
積分 - 50772
排名 - 448
最新評(píng)論
1.?re: 簡(jiǎn)單打印內(nèi)存的小玩意兒
不錯(cuò)
--dddd
2.?re: 尋找最長(zhǎng)連續(xù)遞增子序列
這個(gè)只能算是方法,效率太低了
--大物
3.?re: 數(shù)單詞數(shù)
規(guī)范化;門口麻煩機(jī);那么孔方兄那么媽媽法;釀母菌法那么;風(fēng)格那么明年;憤怒麻煩那么憤怒憤怒留念多孔蕈樂(lè)觀好看的里邊趕快巴拿馬城,新年巴拿馬國(guó)際法,不
--申訴臺(tái)
4.?re: 數(shù)單詞數(shù)
感到發(fā)現(xiàn)看來(lái)自動(dòng)化大會(huì)單行本打開(kāi)怎么趕快電子管矛盾感動(dòng)不動(dòng)門口‘大批看病黃道婆民主
--申訴臺(tái)
5.?re: 移除字符
評(píng)論內(nèi)容較長(zhǎng),點(diǎn)擊標(biāo)題查看
--D_BOY
閱讀排行榜
1.?求最大公約數(shù)與最小公倍數(shù)(3516)
2.?COFF格式續(xù)篇—Lib文件的結(jié)構(gòu)zz(2256)
3.?計(jì)算Int最大最小值(2144)
4.?IA32/Windows&Linux高精度計(jì)時(shí)器(1750)
5.?尋找最長(zhǎng)遞增子序列(1497)
評(píng)論排行榜
1.?計(jì)算Int最大最小值(5)
2.?IA32/Windows&Linux高精度計(jì)時(shí)器(4)
3.?兩個(gè)堆棧模擬一個(gè)隊(duì)列(3)
4.?ZMD(3)
5.?數(shù)單詞數(shù)(3)
亚洲精品国产字幕久久不卡
|
人人狠狠综合久久亚洲婷婷
|
亚洲AⅤ优女AV综合久久久
|
欧美麻豆久久久久久中文
|
一本色道久久综合狠狠躁篇
|
日日狠狠久久偷偷色综合免费
|
亚洲人成无码久久电影网站
|
久久久久亚洲精品无码蜜桃
|
夜夜亚洲天天久久
|
久久久亚洲裙底偷窥综合
|
久久中文字幕一区二区
|
国产亚洲美女精品久久久2020
|
99久久精品免费看国产一区二区三区
|
色诱久久av
|
亚洲国产精久久久久久久
|
99蜜桃臀久久久欧美精品网站
|
情人伊人久久综合亚洲
|
久久天天躁狠狠躁夜夜网站
|
久久久久女教师免费一区
|
精品精品国产自在久久高清
|
久久亚洲国产精品成人AV秋霞
|
久久线看观看精品香蕉国产
|
久久久久久久久久久
|
久久久久综合国产欧美一区二区
|
久久精品亚洲一区二区三区浴池
|
亚洲精品高清一二区久久
|
国产精品美女久久久久AV福利
|
久久天天躁狠狠躁夜夜avapp
|
亚洲一区精品伊人久久伊人
|
国产巨作麻豆欧美亚洲综合久久
|
久久久精品午夜免费不卡
|
久久精品国产日本波多野结衣
|
久久婷婷五月综合成人D啪
|
嫩草影院久久国产精品
|
国产成年无码久久久久毛片
|
蜜臀av性久久久久蜜臀aⅴ麻豆
|
久久久久久伊人高潮影院
|
久久影视综合亚洲
|
日本精品久久久久久久久免费
|
精品综合久久久久久88小说
|
久久精品国产精品亚洲毛片
|