[FFmpeg-devel] [PATCH] checkasm: Use a self-balancing tree
Ronald S. Bultje
rsbultje at gmail.com
Sat Sep 26 12:53:08 CEST 2015
Hi,
On Fri, Sep 25, 2015 at 3:28 PM, Henrik Gramner <henrik at gramner.com> wrote:
> Tested functions are internally kept in a binary search tree for efficient
> lookups. The downside of the current implementation is that the tree
> quickly
> becomes unbalanced which causes an unneccessary amount of comparisons
> between
> nodes. Improve this by changing the tree into a self-balancing left-leaning
> red-black tree with a worst case lookup/insertion time complexity of O(log
> n).
>
> Significantly reduces the recursion depth and makes the tests run around
> 10%
> faster overall. The relative performance improvement compared to the
> existing
> non-balanced tree will also most likely increase as more tests are added.
> ---
> tests/checkasm/checkasm.c | 59
> +++++++++++++++++++++++++++++++++++++----------
> 1 file changed, 47 insertions(+), 12 deletions(-)
lgtm.
Ronald
More information about the ffmpeg-devel
mailing list