src/lcs.js
function computeLcsMatrix(xs, ys) {
  var n = xs.size||0;
  var m = ys.size||0;
  var a = makeMatrix(n + 1, m + 1, 0);

  for (var i = 0; i < n; i++) {
    for (var j = 0; j < m; j++) {
      if (Immutable.is(xs.get(i), ys.get(j))) {
        a[i + 1][j + 1] = a[i][j] + 1;
      }
      else {
        a[i + 1][j + 1] = Math.max(a[i + 1][j], a[i][j + 1]);
      }
    }
  }

  return a;
}
function computeLcsMatrix(xs, ys) {
  var n = xs.size||0;
  var m = ys.size||0;
  var a = makeMatrix(n + 1, m + 1, 0);

  for (var i = 0; i < n; i++) {
    for (var j = 0; j < m; j++) {
      if (Immutable.is(xs.get(i), ys.get(j))) {
        a[i + 1][j + 1] = a[i][j] + 1;
      }
      else {
        a[i + 1][j + 1] = Math.max(a[i + 1][j], a[i][j + 1]);
      }
    }
  }

  return a;
}
function computeLcsMatrix ( xs , ys ) { var n = xs . size || 0 ; var m = ys . size || 0 ; var a = makeMatrix ( n + 1 , m + 1 , 0 ) ; for ( var i = 0 ; i < n ; i ++ ) { for ( var j = 0 ; j < m ; j ++ ) { if ( Immutable . is ( xs . get ( i ) , ys . get ( j ) ) ) { a [ i + 1 ] [ j + 1 ] = a [ i ] [ j ] + 1 ; } else { a [ i + 1 ] [ j + 1 ] = Math . max ( a [ i + 1 ] [ j ] , a [ i ] [ j + 1 ] ) ; } } } return a ; }
Computes the Longest Common Subsequence table
@param xs Indexed Sequence 1
@param ys Indexed Sequence 2
Computes the Longest Common Subsequence table