首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往
您找到你想要的搜索结果了吗?
是的
没有找到

各种经典算法总结

/* 二分查找   * 算法思想:1、将数组排序(从小到大);2、每次跟中间的数mid比较,如果相等可以直接返回,   * 如果比mid大则继续查找大的一边,否则继续查找小的一边。    输入:排序好的数组 - sSource[],数组大小 - array_size,查找的值 - key    返回:找到返回相应的位置,否则返回-1  */   int BinSearch(int sSource[], int array_size, int key)   {          int low = 0, high = array_size - 1, mid;       while (low <= high)       {                  mid = (low + high) / 2; //获取中间的位置           if (sSource[mid] == key)                           return mid;           if (sSource[mid] > key)                         high = mid - 1; //如果比key大,则往低的位置查找           else               low = mid + 1;  //如果比key小,则往高的位置查找       }          return -1;     }

02
领券