Tengo problemas para usar conjuntos disjuntos en el etiquetado de componentes conectados. He buscado en muchos ejemplos y también en this question donde Bo Tian proporcionó una muy buena implementación de Conjuntos Disjuntos como lista enlazada de C++. Ya implementé el etiquetado de componentes conectados (las etiquetas son enteros simples) en mi programa, pero me cuesta mucho resolver las equivalencias entre las etiquetas con conjuntos disjuntos.¿Cómo se utilizan conjuntos disjuntos en el etiquetado de componentes conectados?
¿Alguien puede ayudarme en eso - tal vez usando la implementación de Bo Tian? Creo que eso también ayudará a otros cuando lleguen a este punto.
EDITAR
Mi algoritmo pasa a través de la imagen y cuando encuentra dos etiquetas de dos píxeles conectados con diferentes etiquetas que tiene que hacer una nota en el 'registro de equivalencia' (que sería el disjunto establece bosque) . Después de recorrer toda la imagen, tengo que resolver las equivalencias (pasando el segundo pase sobre la imagen) mirando el registro y luego marcando estos píxeles que tienen etiquetas equivalentes al mínimo fuera del conjunto.
Gracias por la respuesta pero quería obtener algo como ejemplo de su uso en el código porque no puedo resolver esto. – Patryk
@ Patryk: no existe una implementación estándar del bosquejo conjunto disjunto, por lo que no creo que pueda dar el uso de la muestra. Además, no conozco completamente el algoritmo que estás usando, así que un ejemplo sería hacer todo por ti. Lo siento por eso. – templatetypedef
@ templateTypedef- Entiendo, pero para mí es realmente difícil encontrarme entre estas listas vinculadas de conjuntos, etiquetas, etc. – Patryk