Is there a way to set vertex color of selected vertices with single click?
You can apply the currently active vertex color for all vertices at once while in Vertex Paint Mode. Just select (Paint -> Set Vertex Colors) from the header menu. Basically, you set the dominant vertex color for the whole mesh and then manually paint a few vertices afterwards. 

While this doesn't work on a selection but only the whole mesh, you might want to split/join your objects beforehand. So that you don't need to paint too much geometry by hand. But there might be some alternative approaches to this like working with vertex groups or utilizing the vertex weight. But this might be the more straight-forward solution.