volatile关键字
书里写的,具体用法具体分析。总之是告诉编译器不应对volatile关键字限定的对象进行优化,因为对象的值可能在程序控制或检测之外被改变。
extern关键字
链接指示,指出任意非C++函数所用的语言。
static关键字
类的静态成员,由类的所有对象所共享
二分查找
只需要注意边界问题。while是>还是>=
二分查找框架:
int binarySearch(int[] nums, int target) {
int left = 0, right = ...;
while(...) {
int mid = left + (right - left) / 2;
if (nums[mid] == target) {
...
} else if (nums[mid] < target) {
left = ...
} else if (nums[mid] > target) {
right = ...
}
}
return ...;
}