二分排序(非递归)int Binary_Search(int a[], int n, int len){ if(len < 0 || a == NULL) return ERROR; int low = 0, high = len – 1, mid; while(low <= high){ mid = (high - low) / 2 + low; //最好不用mid=(high + low)/2, 可能溢出 if(a[mid] == n) return mid; else if(a[mid] < n) low = mid + 1; else high = mid - 1; } } return -1; //查找失败 } 版权声明:本文为xls807205979原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。原文链接:https://blog.csdn.net/xls807205979/article/details/46402847