Data commit
This commit is contained in:
parent
7387c8f97b
commit
cb5bb5e222
199093 changed files with 3378972 additions and 0 deletions
|
|
@ -0,0 +1,30 @@
|
|||
F longest_increasing_subsequence(x)
|
||||
V n = x.len
|
||||
V P = [0] * n
|
||||
V M = [0] * (n + 1)
|
||||
V l = 0
|
||||
L(i) 0 .< n
|
||||
V lo = 1
|
||||
V hi = l
|
||||
L lo <= hi
|
||||
V mid = (lo + hi) I/ 2
|
||||
I (x[M[mid]] < x[i])
|
||||
lo = mid + 1
|
||||
E
|
||||
hi = mid - 1
|
||||
V newl = lo
|
||||
P[i] = M[newl - 1]
|
||||
M[newl] = i
|
||||
|
||||
I (newl > l)
|
||||
l = newl
|
||||
|
||||
[Int] s
|
||||
V k = M[l]
|
||||
L(i) (l - 1 .. 0).step(-1)
|
||||
s.append(x[k])
|
||||
k = P[k]
|
||||
R reversed(s)
|
||||
|
||||
L(d) [[3, 2, 6, 4, 5, 1], [0, 8, 4, 12, 2, 10, 6, 14, 1, 9, 5, 13, 3, 11, 7, 15]]
|
||||
print(‘a L.I.S. of #. is #.’.format(d, longest_increasing_subsequence(d)))
|
||||
Loading…
Add table
Add a link
Reference in a new issue