Fair and efficient spectrum sharing is an important problem in cognitive radios. In view of the clustering cognitive radio network with capacity-limited common channels, this letter proposes a low-complexity hierarchical spectrum sharing method, which is carried out in two steps. First, the spectrum holes are allocated to clusters in a fair and distributed way by using the list-coloring method. Then, all the channels in every spectrum hole are allocated by cluster head to minimize the outage probability by using the maximum matching method. Such a scheme not only takes a great advantage of the low signaling overhead and computation complexity, but also achieves the suboptimal outage performance which is close to that of the exhaustive search.