The fingerprint positioning (FP) algorithm has been investigated extensively owing to the fact that it can provide a relatively ideal indoor positioning result. However, the effectiveness of the fingerprint algorithm relies on the size of fingerprint database, which prevents the algorithm from being widely applied in practical applications. In this paper, an improved fingerprint algorithm with access point (AP) selection strategy and reference point (RP) selection strategy is proposed to reduce the size of the fingerprint database and improve the positioning accuracy. The experimental results show that the proposed algorithm can reduce the storage size of the fingerprint database by more than 42·64%. Moreover, compared with the FP algorithm, the fingerprint algorithm with segment characteristic distance (FP-SCD) and the fingerprint algorithm with RP selection strategy (FP-RPSS), the average positioning error of the proposed algorithm is reduced by 20·15%, 10·83% and 11·57%, respectively. Therefore, the proposed algorithm has a good application in real positioning scenarios.