二分法java c# VB.NET

 JAVA二分法

 1  public   int  Found( int  a[],  int  r) {
 2      int  start, end, middle, rs;
 3     start  =   0 ;
 4     end  =  a.length;
 5     rs  =  r;
 6 
 7      while  (start  <  end) {
 8 
 9      middle  =  (start  +  end)  /   2 ;
10     
11       if  (rs  ==  a[middle]) {
12        return  middle;
13      }
14       if  (rs  <  a[middle]) {
15       end  =  middle - 1 ;
16      
17      }
18       if  (rs  >  a[middle]) {
19       start  =  middle + 1 ;
20      }
21     }
22      return   - 1 ;
23 
24  }

 C#二分法

ExpandedBlockStart.gif 代码
 1       public   int  Found( int [] a,  int  r)
 2      {
 3           int  start, end, middle, rs;
 4          start  =   0 ;
 5          end  =  a.length;
 6          rs  =  r;
 7           while  (start  <  end)
 8          {
 9              middle  =  (start  +  end)  /   2 ;
10               if  (rs  ==  a[middle])
11              {
12                   return  middle;
13              }
14               if  (rs  <  a[middle])
15              {
16                  end  =  middle  -   1 ;
17              }
18               if  (rs  >  a[middle])
19              {
20                  start  =  middle  +   1 ;
21              }
22          }
23           return   - 1 ;
24      }

 

VB.NET

ExpandedBlockStart.gif 代码
 1      Public Function Found(ByVal a As Integer(), ByVal r As Integer) As Integer
 2          Dim start As Integer, [end] As Integer, middle As Integer, rs As Integer
 3          start  =   0
 4          [end]  =  a.length
 5          rs  =  r
 6          While start  <  [end]
 7              middle  =  (start  +  [end]) \  2
 8              If rs  =  a(middle) Then
 9                  Return middle
10              End If
11              If rs  <  a(middle) Then
12                  [end]  =  middle  -   1
13              End If
14              If rs  >  a(middle) Then
15                  start  =  middle  +   1
16              End If
17          End While
18          Return  - 1
19      End Function
 

转载于:https://www.cnblogs.com/X-Jonney/archive/2010/12/08/1900675.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值