| 查看: 552 | 回复: 2 | |||
wxyuan2014铜虫 (小有名气)
|
[求助]
求一维数组最小值索引 已有2人参与
|
| 大家好,请问Java中有没有求数组最小值索引的函数呢,类似的在MATLAB中有w=find(n==min(n(0:99))) |
» 猜你喜欢
各位大神,目前国内有哪些比较好用的逆合成软件?
已经有14人回复
国社科系统bug了,是不是要放榜了?
已经有10人回复
现代”学阀”该如何界定
已经有9人回复
课题组招2027级博士 上海工程技术大学 激光智能制造方向
已经有4人回复
上海工程技术大学 激光智能制造课题组 2027级博士研究生招生
已经有3人回复
上海工程技术大学激光智能制造课题组|2027级博士研究生招生公告
已经有11人回复
申博发邮件
已经有11人回复
我的奶奶
已经有3人回复

FMStation
至尊木虫 (知名作家)
- 应助: 591 (博士)
- 贵宾: 0.03
- 金币: 18769.2
- 红花: 97
- 帖子: 8891
- 在线: 1498.1小时
- 虫号: 2400059
- 注册: 2013-04-04
- 专业: 计算机应用技术
【答案】应助回帖
★ ★ ★ ★ ★
感谢参与,应助指数 +1
wxyuan2014: 金币+5 2016-08-08 15:43:13
感谢参与,应助指数 +1
wxyuan2014: 金币+5 2016-08-08 15:43:13
|
C Code: #include<stdio.h> int main(void) { int i, j, size_A=2, size_A2=3; float A[2][3]= {{-1e300, 2, 3},{2,-1e300,5}}; /*NOTE: -1e300 outputs as -Inf*/ int size_index=0; int rloc, cloc; float index[size_A*size_A2]; for(j=0; j<size_A2; j++) /*Finds rows where values in each column are greater than -Inf. Also finds length of new linear matrix*/ { for(i=0; i<size_A; i++) { if(A[j]>-1e300) { cloc=j+1; rloc=i+1; size_index++; index[1][size_index]= rloc; printf("col:%d\nrow:%d\nsize:%d\n", cloc, rloc, size_index); }printf("%d", index[1][size_index]); } } return 0; } http://cboard.cprogramming.com/c ... -find-function.html |
2楼2016-08-08 14:16:42
jianliu67
木虫 (小有名气)
- 应助: 27 (小学生)
- 金币: 4053.5
- 红花: 4
- 帖子: 216
- 在线: 135.7小时
- 虫号: 3511817
- 注册: 2014-11-01
- 性别: GG
- 专业: 计算机科学的基础理论
【答案】应助回帖
★ ★ ★ ★ ★
感谢参与,应助指数 +1
wxyuan2014: 金币+5 2016-08-09 15:54:08
感谢参与,应助指数 +1
wxyuan2014: 金币+5 2016-08-09 15:54:08
|
看你追求什么了. 1. 如果追求效率, 你得自己写一段code, 循环整个数组, 得到最小值的同时保存它的index. 2. 如果只追求代码简洁好看, 可以这样写: int minIndex = list.indexOf(Collections.min(list)), 这里 <ArrayList>list 是你的数组. The second one is exactly like the Matlab method you wanted, but it goes through the same list twice in the worst case scenario. The first method only goes through the list once so it's faster. |
3楼2016-08-09 10:40:45










回复此楼