A method of estimating a blood pressure is provided. The method of estimating blood pressure includes inputting physical characteristic information and blood pressure information of a subject, determining, among a plurality of groups classified according to hemodynamic characteristics, a group to which the subject belongs based on the physical characteristic information and the blood pressure information, detecting a bio-signal of the subject, extracting a plurality of features from the detected the bio-signal, and estimating a blood pressure corresponding to the extracted plurality of features and the determined group based on a learned blood pressure estimation algorithm.