由买买提看人间百态

boards

本页内容为未名空间相应帖子的节选和存档,一周内的贴子最多显示50字,超过一周显示500字 访问原贴
Java版 - 各位大牛帮看看段代码
相关主题
向各位朋友请教一道题目这道题该走什么路
How to check if an element is in an array?Re: 谁有Java或Oracle的毒招 ?
any tools for ...一个Java程序员的话(2)
Re: Why are all java IDEs written in javRe: connection pool
eclipse 气死我了!Help: 小程序挑错
Complaint about Java class packageStupid IBM JDK
JavaBean variable name standardfaint, unreachable statement in java
JAVA IDE ?Can Java thread return a value?
相关话题的讨论汇总
话题: numarr话题: inda话题: indb话题: midind话题: int
进入Java版参与讨论
1 (共1页)
d*******X
发帖数: 188
1
老说一定要返回int type的数据, 不让通过。eclipse ide.
public static int accOcc(int k, int[] numArr, int inda, int indb){
if(inda>indb)
return 0;
if(numArr[inda]>k || numArr[indb] return 0;
if(numArr[inda]==k && numArr[indb]==k)
return indb-inda+1;
int midInd = (inda + indb)/2;
if(midInd return accOcc(k, numArr, midInd+1,indb);
if(midInd==k)
return 1+accOcc(k, numArr, inda, midInd-1)+accOcc(k, numArr,
midInd+1,indb);
if(midInd>k)
return accOcc(k, numArr, inda, midInd-1);

}
z****e
发帖数: 54598
2
因为你都是if,没有else
ide检查时候不管你if的条件是什么
只要你这个if没有else配合
就是残缺的
所以你只在if里面写return是不够的
哪怕你么多个if涵盖了所有的可能性
p*****2
发帖数: 21240
3
这段代码写的也够可以的了。
d*******X
发帖数: 188
4
正解! 拜谢。

【在 z****e 的大作中提到】
: 因为你都是if,没有else
: ide检查时候不管你if的条件是什么
: 只要你这个if没有else配合
: 就是残缺的
: 所以你只在if里面写return是不够的
: 哪怕你么多个if涵盖了所有的可能性

d*******X
发帖数: 188
5
见笑了,刚开始练习。改了如下,
public static int accOcc(int k, int[] numArr, int inda, int indb){
if(inda>indb)
return 0;
if(numArr[inda]>k || numArr[indb] return 0;
if(numArr[inda]==k && numArr[indb]==k)
return indb-inda+1;
int midInd = (inda + indb)/2;
if(numArr[midInd] return accOcc(k, numArr, midInd+1,indb);
else if(numArr[midInd]==k)
return 1+accOcc(k, numArr, inda, midInd-1)+accOcc(k, numArr,
midInd+1,indb);
else
return accOcc(k, numArr, inda, midInd-1);

}

【在 p*****2 的大作中提到】
: 这段代码写的也够可以的了。
g*****g
发帖数: 34805
6
在最后一行加个缺省的return即可。
p*****2
发帖数: 21240
7

你这个代码是个二分搜索骂?

【在 d*******X 的大作中提到】
: 见笑了,刚开始练习。改了如下,
: public static int accOcc(int k, int[] numArr, int inda, int indb){
: if(inda>indb)
: return 0;
: if(numArr[inda]>k || numArr[indb]: return 0;
: if(numArr[inda]==k && numArr[indb]==k)
: return indb-inda+1;
: int midInd = (inda + indb)/2;
: if(numArr[midInd]
d*******X
发帖数: 188
8
是的。 大牛有什么建议?

【在 p*****2 的大作中提到】
:
: 你这个代码是个二分搜索骂?

p*****2
发帖数: 21240
9

你想解决的是什么问题?

【在 d*******X 的大作中提到】
: 是的。 大牛有什么建议?
d*******X
发帖数: 188
10
简单的查找element重复的次数,array假设是有序的。

【在 p*****2 的大作中提到】
:
: 你想解决的是什么问题?

相关主题
Complaint about Java class package这道题该走什么路
JavaBean variable name standardRe: 谁有Java或Oracle的毒招 ?
JAVA IDE ?一个Java程序员的话(2)
进入Java版参与讨论
p*****2
发帖数: 21240
11
我这么写的。找元素在数组的上下界。
def bs(arr:Array[Int], target:Int, left:Boolean):Int={
var i=0
var j=arr.length-1
while(i val mid=if(left) i+(j-i)/2 else j-(j-i)/2
if(arr(mid)==target)
if(left) j=mid else i=mid
else if(arr(mid)>target)
j=mid-1
else
i=mid+1
}
j
}

def findCount(arr:Array[Int], target:Int):Int={
if(arr==null || arr.length==0) return 0
val left=bs(arr,target,true)
if(left<0) 0 else bs(arr,target,false)-left+1
}
s********y
发帖数: 62
12
这才是IDE不过的原因,虽说写得确实。。。

【在 g*****g 的大作中提到】
: 在最后一行加个缺省的return即可。
c*********e
发帖数: 16335
13
正解。

【在 g*****g 的大作中提到】
: 在最后一行加个缺省的return即可。
w****u
发帖数: 3147
14
……既然用ide了,为啥不让通过点一下不就知道了……都有hint的啊
d*******X
发帖数: 188
15


【在 g*****g 的大作中提到】
: 在最后一行加个缺省的return即可。
1 (共1页)
进入Java版参与讨论
相关主题
Can Java thread return a value?eclipse 气死我了!
why is this necessary?Complaint about Java class package
请问一个有关选择数据结构的问题JavaBean variable name standard
问几个土问题JAVA IDE ?
向各位朋友请教一道题目这道题该走什么路
How to check if an element is in an array?Re: 谁有Java或Oracle的毒招 ?
any tools for ...一个Java程序员的话(2)
Re: Why are all java IDEs written in javRe: connection pool
相关话题的讨论汇总
话题: numarr话题: inda话题: indb话题: midind话题: int