>>154
>>153 で正しいのか?node が双方向リンクだったりはしないのか?まぁ知らんけど

>>154 はバイナリサーチだが、再帰で書くためには関数のインターフェイスを変える必要が有る
よって、再帰用に下請け関数を書いて対応した

int BSFunc( int x, int v[], int b, int e )
{
int m;
if( b == e ) {
if( x == v[b] ) return b;
else return -1;
}
m = ( b + e ) / 2;
if( x == v[m] ) return m;
if( x < v[m] )
return BSFunc( x, v, b, m - 1 );
else
return BSFunc( x, v, m + 1, e );
}
int biesearch(int x, int v[], int n) 
{
if( !v || n <= 0 ) return -1;
return BSFunc( x, v, 0, n-1 );
}