l+r 数字可能会溢出,在前端会不会这样我不知道,二分那个mid也可以这么写,mid = left + (right - left ) / 2保证了两数相加不会溢出