La resolución está bastante bien, una observación es que estás asumiendo que G es conexo (podría no serlo y ahí no hay arbol de cubrimiento)
También es importante bajar un poco más a tierra el algoritmo, aunque la idea es claramente la que diste. Esto permitiría ser mas detallista en la parte C.