C/C++の宿題を片付けます 99代目 at TECH
[2ch|▼Menu]
135:デフォルトの名無しさん
07/11/09 00:27:56
>>133
int binarysearch(int v){
/* ここにプログラムを追加 */
int l = 0, r = N-1,x;
while( l<=r )
{
x = (l + r) / 2;
printf("%d %d %d \n",l,x,r);
if( v == a[x] ) return 0; /* 見つかった */
if( v > a[x] ) l = x + 1;
if( v < a[x] ) r = x - 1;
}
return -1;
}

int interpolationsearch(int v){
/* ここにプログラムを追加 */
int l = 0, r = N-1,x;
while( l<=r )
{
x = l + (v - a[l]) * (r - l) / (a[r]-a[l]);
if(x < 0) return -1;
if(x >= N) return -1;
printf("%d %d %d \n",l,x,r);
if( v == a[x] ) return 0; /* 見つかった */
if( v > a[x] ) l = x + 1;
if( v < a[x] ) r = x - 1;
}
return -1;
}


次ページ
続きを表示
1を表示
最新レス表示
スレッドの検索
類似スレ一覧
話題のニュース
おまかせリスト
▼オプションを表示
暇つぶし2ch

4817日前に更新/222 KB
担当:undef