Compress trie even further by 1.9% using bipartite matching by yongqli · Pull Request #46 · dtolnay/unicode-ident (original) (raw)

@yongqli

The LEAF table is compressed by overlapping adjacent chunks at half-chunk boundaries. The previous greedy approach found overlaps in arbitrary order; this replaces it with Kuhn's algorithm for maximum bipartite matching, which finds the provably optimal set of overlaps.

This reduces the LEAF table from 10248 to 10056 bytes (~1.9% reduction).