c语言刷题 二分查找+暴力解法
#include <stdio.h>
int searchInsert(int *nums, int numsSize, int target)
{
int i = 0;
for (i = 0; i < numsSize; i++)
{
if (nums[i] >= target)
{
return i;
}
/* code */
}
return numsSize;
}
// 1,3,4,6
int searchInsertTwo(int *nums, int numsSize, int target)
{
int left = 0;
int right = numsSize - 1;
while (left <= right)
{
int mid = left + (right - left) / 2;
if (nums[mid] == target)
{
return mid;
/* code */
}
else if (nums[mid] > target)
{
right = mid - 1;
/* code */
}
else
{
left = mid + 1;
/* code */
}
/* code */
}
return left;
}
int main(int argc, char const *argv[])
{
int a = 1, b = 2, c = 3;
//定义一个指针数组
int *arr[3] = {&a, &b, &c};
int index = searchInsert(*arr, 3, 3);
printf("%d", index);
return 0;
}

浙公网安备 33010602011771号