The retrieval of tree height percentiles from satellite lidar waveforms observed over mountainous areas is greatly challenging due to the broadening and overlapping of the ground return and vegetation return. To accurately represent the shape distributions of the vegetation and ground returns, the target response waveform (TRW) is resolved using a Richardson–Lucy deconvolution algorithm with adaptive iteration. Meanwhile, the ground return is identified as the TRW component within a 4.6 m ground signal extent above the end point of the TRW. Based on the cumulative TRW distribution, the height metrics of the energy percentiles of 25%, 50%, 75%, and 95% are determined using their vertical distances relative to the ground elevation in this study. To validate the proposed algorithm, we select the received waveforms of the Global Ecosystem Dynamics Investigation (GEDI) lidar over the Pahvant Mountains of central Utah, USA. The results reveal that the resolved TRWs closely resemble the actual target response waveforms from the coincident airborne lidar data, with the mean values of the coefficient of correlation, total bias, and root-mean-square error (RMSE) taking values of 0.92, 0.0813, and 0.0016, respectively. In addition, the accuracies of the derived height percentiles from the proposed algorithm are greatly improved compared with the conventional Gaussian decomposition method and the slope-adaptive waveform metrics method. The mean bias and RMSE values decrease by the mean values of 1.68 m and 2.32 m and 1.96 m and 2.72 m, respectively. This demonstrates that the proposed algorithm can eliminate the broadening and overlapping of the ground return and vegetation return and presents good potential in the extraction of forest structure parameters over rugged mountainous areas.