Hi everyone,
I was going through Sage's codebase, and I came across the file
```
SAGE_ROOT/src/sage/graphs/spanning_tree.pyx
```
In the TODO section, it is mentioned that
```
- Rewrite: func:`kruskal` to use priority queues.
```
I looked it up on Google and StackOverFlow, but I didn't come across any such implementation. The standard implementations all prefer to use the DisjointSet data structure. I would like to contribute to Sage and if someone can point me to a good resource which discusses this concept, preferably with a better time complexity than by using Disjoint Sets, that would be really great