Let's assume a complete graph of > 25000 nodes. Each node is essentially a point on a plane. It has 625M edges. Each edge has length which should be stored as a floating point number.
I need an algorithm to find its MST (on a usual PC).
If I take Kruskal's algorithm, it needs to sort all edges first, but I cannot afford even store the edges altogether in memory at the same time.
If I choose Prim's algorithm, it's quite difficult to evaluate how many edges will be stored in a heap at the same time, but probably the most of them will be there very soon after algorithm starts.
Is there any more memory-sufficient algorithm which can allow me to avoid sorting edges stored in a file?
Also, are there any known MST algorithms which utilize the fact that any tree edges satisfy triangle inequality?