Skip to content

Faster version of longest_increasing_subsequence_length #34214

@dcoudert

Description

@dcoudert

Before

sage: set_random_seed(0)
sage: P = Permutations(30)
sage: L = [P.random_element() for _ in range(1000)]
sage: %timeit [e.longest_increasing_subsequence_length() for e in L]
24.9 ms ± 953 µs per loop (mean ± std. dev. of 7 runs, 10 loops each)

After

sage: %timeit [e.longest_increasing_subsequence_length(e) for e in L]
5.94 ms ± 133 µs per loop (mean ± std. dev. of 7 runs, 100 loops each)

follow up: #31451, #34218

CC: @videlec @nadialafreniere

Component: combinatorics

Keywords: permutation, subsequences

Author: David Coudert

Branch/Commit: 15aa550

Reviewer: Vincent Delecroix

Issue created by migration from https://trac.sagemath.org/ticket/34214

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions