我的任务是使用Ruby制作更高效的二进制搜索代码.我按照这个链接的逻辑:http: //www.cprogramming.com/discussionarticles/sorting_and_searching.html
我的代码如下:
def bsearch(a, k)
lower = 0
upper = a.length-1
while a[upper].to_f> k.to_f and a[lower].to_f< k.to_f
low_diff = k.to_f -a[lower].to_f
range_diff = a[upper].to_f-a[lower].to_f
count_diff = upper-lower
range = low_diff/range_diff * count_diff + lower
if k==a[lower]
return lower
if k.to_f > a[range].to_f
lower = range+1
else if k.to_f < a[range].to_f
upper =range
else
lower = range
end
end
end
Run Code Online (Sandbox Code Playgroud)
我仔细检查,但我不知道为什么我一直遇到以下错误:
unexpected $end , expecting kEND
Run Code Online (Sandbox Code Playgroud) 您好,我正在尝试实施一个简单的负载平衡实验:在可用的3个负载均衡器调度算法之间进行更改:请求计数,加权流量计数和待处理请求计数.
参考:http://httpd.apache.org/docs/2.2/mod/mod_proxy_balancer.html 我在apache服务器中配置了我的conf文件:
码:
<IfModule ssl_module>
SSLRandomSeed startup builtin
SSLRandomSeed connect builtin
</IfModule>
LoadModule proxy_balancer_module modules/mod_proxy_balancer.so
LoadModule proxy_module modules/mod_proxy.so
LoadModule proxy_http_module modules/mod_proxy_http.so
LoadModule jk_module modules/mod_jk.so
JkWorkersFile conf/workers.properties
JkShmFile logs/mod_jk.shm
JkLogFile logs/mod_jk.log
JkLogLevel info
JkLogStampFormat "[%a %b %d %H:%M:%S %Y] "
#JkMount /examples/jsp/dates* balancer
JkMount /Prototype* balancer
Run Code Online (Sandbox Code Playgroud)
#此代理标记用于待处理请求计数算法BalancerMember ip1 loadfactor = 1 BalancerMember ip2 loadfactor = 1
ProxySet lbmethod=byrequests#Request Counting Algorithm
BalancerMember http://192.168.0.2/ # Balancer member 1
BalancerMember http://192.168.0.10/ # Balancer member 2
ProxySet lbmethod=bybusyness
</Proxy>
Run Code Online (Sandbox Code Playgroud)
但是,我不断收到错误:在某个位置定义时,BalancerMember不能有平衡器名称
从这一行:BalancerMember"//192.168.0.2/"#Balancer成员1 …