Searching in Grover's Algorithm

Grover's algorithm is usually described in terms of the iteration of a compound operator of the form $Q = - H I_{0} H I_{x_0}$. Although it is quite straightforward to verify the algebra of the iteration, this gives little insight into why the algorithm works. What is the significance of the compound structure of $Q$? Why is there a minus sign? Later it was discovered that $H$ could be replaced by essentially any unitary $U$. What is the freedom involved here? We give a description of Grover's algorithm which provides some clarification of these questions.

[1]  Alexei Y. Kitaev,et al.  Quantum measurements and the Abelian Stabilizer Problem , 1995, Electron. Colloquium Comput. Complex..

[2]  Gilles Brassard,et al.  Quantum Counting , 1998, ICALP.