Redian新闻
>
请帮我看看这个java method? 一直不正常运行
avatar
请帮我看看这个java method? 一直不正常运行# Programming - 葵花宝典
z*8
1
【 以下文字转载自 Programming 讨论区 】
发信人: zhaichun108 (onlylonely), 信区: Programming
标 题: 学习sql和stored procedure, 有什么书推荐吗?
发信站: BBS 未名空间站 (Tue Nov 24 11:35:30 2009, 美东)
3x
avatar
x*g
2
白羊(爆笑)、金牛(傻傻笑)、
双子(皮笑肉不笑)、巨蟹(捂嘴笑)、
狮子(豪放大笑)、处女(俺就不笑)、
天秤(笑不露齿)、天蝎(冷笑)、
射手(狂笑)、魔羯( 苦笑)、
水瓶(怪笑)、双鱼(歪嘴儿笑)
avatar
h*o
4
一个只是column sorted的2D array,用binary search查找一个element出现的次数。
多谢帮助!
public static int count(int[][] array, int query) {

int searchTotal = 0;
for (int c=0; c < array.length; c++){
searchTotal += biSearch(array, query, c);
}

return searchTotal;

}
private static int biSearch(int[][] array, int query, int row) {
// create a 1D array to hold the entries of 2D array's column
int[] column = new int[array.length];
int count =0;
int low = 0;
int high = column.length - 1;
// put 2D array's column into 1D array
for (int i = 0; i < array.length; i++)
column[i] = array[i][row];
// binary search on column array
while (low <= high) {
int mid = low + (high - low) / 2;
if (column[mid] > query){
high = mid - 1;
}
else if (column[mid] < query){
low = mid + 1;
}
else if (column[mid] == query) {
count++;
int left = -1;
int right = 1;

while ((mid + left) >= 0) {
if (column[mid + left] == query) {
left--;
count++;
}
}

while ((mid + right) <= (column.length - 1)) {
if (column[mid + right] == query) {
right++;
count++;
}
}
//return count;
}

}

return count;
}
avatar
y*w
5
你想学啥数据库啊,oracle, db2, sql server, sybase ace,etc...
咋也得先明确下吧,

【在 z*********8 的大作中提到】
: 【 以下文字转载自 Programming 讨论区 】
: 发信人: zhaichun108 (onlylonely), 信区: Programming
: 标 题: 学习sql和stored procedure, 有什么书推荐吗?
: 发信站: BBS 未名空间站 (Tue Nov 24 11:35:30 2009, 美东)
: 3x

avatar
s*i
6
可怜的双鱼
avatar
s*3
7
挺好的~~
avatar
s*r
8
程序写的很糟糕,biSearch应该只完成数组的搜索,传入数组为什么搞成二维的?

★ 发自iPhone App: ChineseWeb 8.7

【在 h******o 的大作中提到】
: 一个只是column sorted的2D array,用binary search查找一个element出现的次数。
: 多谢帮助!
: public static int count(int[][] array, int query) {
:
: int searchTotal = 0;
: for (int c=0; c < array.length; c++){
: searchTotal += biSearch(array, query, c);
: }
:
: return searchTotal;

avatar
z*8
9
SQL server or Oracle

【在 y****w 的大作中提到】
: 你想学啥数据库啊,oracle, db2, sql server, sybase ace,etc...
: 咋也得先明确下吧,

avatar
w*g
11
错的地方好几个。第一个colum/row不分。最外层c的循环应该是到array[0].length而不
是array.length
biSearch这种程序需要背一个标准的。检测到相等时处理就完全混乱了。
正确的做法:检测到相等把low置为mid(或者把high置为mid),并且接着找,直到low和
high相等为止。最后low = high就是第一个>=query的数(或者第一个<=query的数)。然
后线性往一个方向找。

【在 h******o 的大作中提到】
: 一个只是column sorted的2D array,用binary search查找一个element出现的次数。
: 多谢帮助!
: public static int count(int[][] array, int query) {
:
: int searchTotal = 0;
: for (int c=0; c < array.length; c++){
: searchTotal += biSearch(array, query, c);
: }
:
: return searchTotal;

avatar
y*w
12
如果or的话,那你还是先学sql server吧,上手容易,环境容易搭,而且m$的教材也很
好。
至于sql之类,有本讲sql server internal的书专门介绍sql server sql的,你去
amazon搜一下应该很多,

【在 z*********8 的大作中提到】
: SQL server or Oracle
avatar
a*y
13
nothing wrong. it is well done.

【在 o**o 的大作中提到】
: what's wrong with this video?
avatar
h*o
14
多谢回复! 我的想法是把二维数组的column的elements导入到一维数组,然后binary
search这个一维数组,不知这样的转换是否可行?

【在 s********r 的大作中提到】
: 程序写的很糟糕,biSearch应该只完成数组的搜索,传入数组为什么搞成二维的?
:
: ★ 发自iPhone App: ChineseWeb 8.7

avatar
o*o
15
well done.. in what sense?

【在 a***y 的大作中提到】
: nothing wrong. it is well done.
avatar
h*o
16
非常感谢! 我再想想你说的怎么实现。。。

而不
low和
。然

【在 w***g 的大作中提到】
: 错的地方好几个。第一个colum/row不分。最外层c的循环应该是到array[0].length而不
: 是array.length
: biSearch这种程序需要背一个标准的。检测到相等时处理就完全混乱了。
: 正确的做法:检测到相等把low置为mid(或者把high置为mid),并且接着找,直到low和
: high相等为止。最后low = high就是第一个>=query的数(或者第一个<=query的数)。然
: 后线性往一个方向找。

avatar
a*y
17
剪接配乐角度。
比起普通人拍的小视频。

【在 o**o 的大作中提到】
: well done.. in what sense?
相关阅读
logo
联系我们隐私协议©2024 redian.news
Redian新闻
Redian.news刊载任何文章,不代表同意其说法或描述,仅为提供更多信息,也不构成任何建议。文章信息的合法性及真实性由其作者负责,与Redian.news及其运营公司无关。欢迎投稿,如发现稿件侵权,或作者不愿在本网发表文章,请版权拥有者通知本网处理。