The longest common subsequence

Another DP problem that is very often used in programming challenge problems is the longest common subsequence (LCS). This problem consists of finding the length of the longest sub­sequence in two string sequences. The longest subsequence is a sequence that appears in the same relative order but is not necessarily contiguous (not a substring) in both strings.

Consider the following example:

Now, let's take a look at the following algorithm:

function lcs(wordX, wordY) {  const m = wordX.length;  const n = wordY.length;  const l = [];  for (let i = 0; i <= m; i++) {    l[i] = []; // {1} for (let j = 0; j <= n; j++) { ...

Get Learning JavaScript Data Structures and Algorithms - Third Edition now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.