Added Longest Increasing Subsequence program to the list

This commit is contained in:
Omkarnath Parida
2020-10-04 11:47:48 +05:30
parent e9fe0ce598
commit 838abade98

View File

@ -0,0 +1,26 @@
/**
* A Dynamic Programming based solution for calculating Longest Increasing Subsequence
* https://en.wikipedia.org/wiki/Longest_increasing_subsequence
*/
function main () {
const x = [0, 8, 4, 12, 2, 10, 6, 14, 1, 9, 5, 13, 3, 11, 7, 15]
const length = x.length
const dp = Array(length).fill(1)
let res = 1
for (let i = 0; i < length; i++) {
for (let j = 0; j < i; j++) {
if (x[i] > x[j]) {
dp[i] = Math.max(dp[i], 1 + dp[j])
if (dp[i] > res)
res = dp[i]
}
}
}
console.log('Length of Longest Increasing Subsequence is:', res)
}
main()