亚洲av成人无遮挡网站在线观看,少妇性bbb搡bbb爽爽爽,亚洲av日韩精品久久久久久,兔费看少妇性l交大片免费,无码少妇一区二区三区
Chinaunix
標題:
c寫的一個折半查找函數(shù),代碼有錯誤嗎?
[打印本頁]
作者:
joychenke
時間:
2014-11-06 15:30
標題:
c寫的一個折半查找函數(shù),代碼有錯誤嗎?
本帖最后由 joychenke 于 2014-11-06 15:32 編輯
代碼如下,想問下,for語句的自加部分,可以用條件表達式的三元運算符“?:”來實現(xiàn)嗎?謝謝。
int binsearch(int x,int v[],int n)
{
int low,high,mid;
low=0;
high=n-1;
for(mid=(high+low)/2;low<=high;(x>v[mid]?(low=mid+1):(high=mid-1)))
{
if(x==v[mid])
return mid;
}
return -1;
}
復制代碼
作者:
ilex
時間:
2014-11-06 17:28
如果是學生,無所謂;
如果工作了,專業(yè)坑隊友!
作者:
shang2010
時間:
2014-11-06 17:42
同意樓上,貌似隊友只要把代碼copy一下測試好不就可以了么
作者:
wangspace
時間:
2014-11-06 18:58
#include <stdio.h>
#include <stdlib.h>
int binsearch(int x, int v[], int n)
{
int low, high, mid;
low = 0;
high = n-1;
while(low < high) {
mid = (low + high) / 2;
if(x <= v[mid])
high = mid;
else
low = mid+1;
}
return (x == v[low]) ? low : -1;
}
int main(int argc, char *argv[])
{
int v[5] = {3, 6, 9, 12, 4};
int x = 36;
printf("%d\n", binsearch(x, v, 5));
return EXIT_SUCCESS;
}
復制代碼
作者:
1210603696
時間:
2014-11-06 21:17
mid=(high+low)/2 可能會溢出
作者:
wangspace
時間:
2014-11-06 21:43
回復
5#
1210603696
為啥
作者:
yzrzxp
時間:
2014-11-07 11:21
這算是在坑同事了
作者:
Susake_
時間:
2014-11-07 13:15
用c/c++庫里面的吧~
歡迎光臨 Chinaunix (http://www.72891.cn/)
Powered by Discuz! X3.2