1. A method of source number estimation, comprising: (1) obtaining signals X(t) received by a uniform linear array, X(t)=[x 1 (t), x 2 (t), L, x M (t)] T is an M×1 vector, where x 1 , L, x M represent signals received by elements from 1 to M in said uniform linear array, and t represents time; (2) calculating the covariance matrix {circumflex over (R)} X according to the received signals by adopting an equation R ^ X = 1 L ⁢ ∑ l = 1 L ⁢ X ⁡ ( t l ) ⁢ X ⁡ ( t l ) H , where L is the number of snapshots, calculating matrix {circumflex over (R)} fb from the covariance matrix {circumflex over (R)} X , where {circumflex over (R)} fb is the covariance matrix after a front-back space smooth processing conducted on the received data of the whole array; calculating the covariance matrix {circumflex over (R)} T =Q M H {circumflex over (R)} fb Q M after real-valued computations from {circumflex over (R)} fb , wherein Q M is a sparse matrix, when M is 2n or 2n+1 respectively, Q M is defined as below: R ^ X = 1 L ⁢ ∑ l = 1 L ⁢ X ⁡ ( t l ) ⁢ X ⁡ ( t l ) H , where J n is an n×n dimension permutation matrix, and I n is an n×n dimension identity matrix; (3) conducting eigendecomposition to {circumflex over (R)} T to obtain its eigenvector matrix U R =[q 1 , q 2 , L, q M ], where q i is the eigenvector of {circumflex over (R)} T , q i =[q 1i , q 2i , L, q mi L, q Mi ] T , i=1, 2, L, M; and (4) calculating a source number m according to the q i .