some codes when learnning data_structure