The underlying hash table is implemented by linked lists and red-black trees.
When the internal bucket exceeds a given threshold, it automatically converts from a linked list to a red-black tree. The test code is located in main.c
TEST
About
The hash table implemented by oneself uses a red-black tree and a linked list internally