Though the performance of belief propagation (BP) decoder for polar codes is comparable with the successive cancellation (SC) decoder, it has significant performance gap when compared with the improved SC decoders, such as SC list (SCL) decoding. In this paper, we propose an improved BP decoding for polar codes with good performance by adapting their parity-check matrices. The decoding process is iterative and consists of two parts. Firstly, the parity-check matrix of polar codes is adjusted such that one of its submatrices corresponding to less reliable bits is in a sparse nature. Secondly, the BP decoding is applied to the adjusted parity-check matrix. Simulation results show that the proposed decoder, when accompanied with the early termination scheme, provides significant performance gains over the original polar BP decoder under a relatively low decoding complexity and even competes with the cyclic redundancy check (CRC)-aided SCL (CRC-SCL) decoder only by increasing a tolerate complexity.