As noted by hwlau, quantum circuits always correspond to unitary operators. For the question to be meaningful, you have to start with some set of gates that you consider building blocks. The rules of combination in linear algebra terms are essentially matrix multiplication and Kronecker product, the first corresponding to sequentially applying two circuits, the other to applying them in parallel.
With a finite set you can not decompose any given unitary operator, but you can approximate any operator as closely as you like, if you choose your basic components carefully.
In this article an algorithm is described.