There is no known fast algorithm for doing 3-coloring (and most experts suspect none exists). If we had one then we could also solve TSP fast. But in the absence of a fast algorithm for 3-coloring all we are establishing is a relationship between two problems (TSP and 3-coloring), not a solution for either one.
(This problem is discussed under the label "maximum bipartite matching" in Cormen et al, section 27.3, pages 600-604. No need to read that part of the book now except maybe to make sure you got the definition of the problem right. For the present discussion this is just another problem of a certain class and we need not even know if any fast algorithms exist for this problem.)
It is easy to check a proposed "assignment" for correctness. That lets us use the very same argument as with TSP to build a "coloring circuit" and thereby show that 3-coloring is at least as hard as the assignment problem. (This does not prove that the assignment problem is hard, nor does it prove that the assignment problem is easy.)
This NP class of problem is very large. It is hard to even think of some optimization problem where the quality of a potential solution isn't easy to measure. What is remarkable about 3-coloring is that is contains all the complexities of all those NP problems. The technical term is that it is "complete", or more precisely, "NP-complete".
Again, Cormen et al covers all of this, in Chapter 36, pages 916-963.
Last edited (or copied to this place) at 9:52 AM, Wednesday, October 18, 1995.