Open OOCZC opened 6 years ago
while(rootInorder <= endInorder && *rootInorder != rootValue) ++ rootInorder; if(rootInorder == endInorder && *rootInorder != rootValue) throw std::exception("Invalid input.");
当rootInorder == endInorder && *rootInorder != rootValue时会继续++ rootInorder;,此时应该为无效输入,缺不能符合rootInorder == endInorder的判断条件。
rootInorder == endInorder && *rootInorder != rootValue
++ rootInorder;
rootInorder == endInorder
则修改为: while(rootInorder < endInorder && *rootInorder != rootValue) ++ rootInorder;
当
rootInorder == endInorder && *rootInorder != rootValue
时会继续++ rootInorder;
,此时应该为无效输入,缺不能符合rootInorder == endInorder
的判断条件。则修改为: while(rootInorder < endInorder && *rootInorder != rootValue) ++ rootInorder;