What atomic orbitals on the oxygen atom and the hydrogen in water overlap?

The electron configuration for O is 1s22s22p4.

The hydrogen atom 1s1.

So oxygen requires two electrons to be isoelectronic with neon. Looking at an orbital diagram for oxygen we note that there are two atomic 2p orbitals that contain unpaired electrons.

So the O-H bonds in water are formed by overlap between a 2p atomic orbital on oxygen and a 1s atomic orbital on hydrogen.

 

One very interesing observation must be made. The H-O-H bond angle in water is 105 degrees. But if we predicted the bond angle in water based on the overlap of the atomic orbitals we would say the H-O-H angle is 90 degrees. What's wrong with our prediction? Why is the actual angle so different from the predicted?