int findFirsrKOfArray(vector nums, int k) {
 if (nums.size() == 0) return -1;
 if (nums[0] > k || nums[nums.size() - 1] < k)
  return -1;
 int left = 0;
 int right = nums.size() - 1;
 int mid = (left + right) / 2;
 while (left < right) {
  if (nums[mid] == k) {
   if (mid == 0) break;
   if (mid > left) {
    if (nums[mid - 1] != k) break;
    else {
     right = mid - 1;
     mid = (left + right) / 2;
    }
   }
  }
  else if (nums[mid] > k) {
   right = mid - 1;
   mid = (left + right) / 2;
  }

  else {
   left = mid + 1;
   mid = (left + right) / 2;
  }
 }
 if (nums[mid] == k) return mid;
 return -1;
}
剑指offer中确实有