Which machine learning algorithm should I apply for differentiate question difficulty level with users' result
I suggest you look at item response theory and the Rasch model.  They construct a model that attempts to identify both (a) the proficiency/knowledge/ability of the user and (b) the level of difficulty of the question.