1.二分查找时(lower + upper) / 2 可以使用lower + (upper - lower) / 2 来替代可以避免整型溢出的风险。

2.不确定指针位数但需要转化为整型时考虑使用long long,使用int可能出错,也可能无法通过编译,编译器报错: cast from 'next*' to 'int' loses precision [-fpermissive]

3.当需要以“换行符”来分割Java中的String时,是否使用System.lineSeparator()取决于用户在什么系统下使用最终的产品,而不是项目最终在什么系统下部署。(曾经犯下这样的错误:考虑项目在windows下开发但需要在Linux下部署,于是自作聪明地在这个地方使用System.lineSeparator()来达到提高兼容性的目的。其实反而制造了Bug:因为虽然项目部署在Linux上,但用户仍然在Windows下传入String,“换行符”自然也就还是Windows的版本)

4.