¿Cuál es la estructura de datos subyacente de un conjunto STL en C ++?

Me gustaría saber cómo se implementa un conjunto en C ++. Si tuviera que implementar mi propio contenedor de conjuntos sin utilizar el contenedor provisto por STL, ¿cuál sería la mejor manera de realizar esta tarea?

Entiendo que los conjuntos STL se basan en la estructura de datos abstractos de un árbol de búsqueda binario. Entonces, ¿cuál es la estructura de datos subyacente? ¿Una matriz?

Además, ¿cómoinsert() trabajar para un set? ¿Cómo comprueba el conjunto si ya existe un elemento en él?

Leí en Wikipedia que otra forma de implementar un conjunto es con una tabla hash. ¿Cómo funcionaría esto?

Respuestas a la pregunta(6)

Su respuesta a la pregunta