java 大于或等于_java大于等于怎么表示

已经结贴。 花费时间:17ms 起始位置:9736 9745 9740 9747 9796  当前位置:316 318 318 318 318  前序位置:319 319 319 320 319  在50000个数据的情况下,用17ms找到合适的位置,效果不错,100红包已发,本帖结束。######我大体明白楼主的意思了 大约就是这么一个东西

/** * 存放有序不定长数组的list */

private List orderNoList;

/**

*如果按照某种顺序从list中取出一定数量的数字的话

*param acquiredNoSum 所取得数字的总数量

*return eachAcquiredNoCount 各自所取数字的数量

*/

public int[] geteachAcquiredNoCount (int acquiredNoSum){

// todo

return new int[10] ;

}

不过你没有说明是按照什么样的顺序取得数字,但你强调了取出有序数我暂且按照以下算法从数组中取数 假定a为下一个被取出的数,a满足以下条件 1,a存在于list orderNoList中的一个数组中 2,假定有序数组b存放有所有已被取出的数并且c表示max(b), 则a=min(orderNoListv中未取数)(多个数组中的最小数字相等时取靠前的一个) 并且a>=c   可以将具体的取数算法封装起来,替换成自己需要的算法 具体算法为 用一个int 数组当作游标 另一个int数组存放待比较的数 通过游标得到待比较数组   得出待比较数组中最小的数对应数组序号以及,相应游标加1,从相应数组取出一个数更新待比较数组,,重复这一步直到所有游标之和等于需取出数的数量 返回游标数组 算法时间复杂度为O(n)与从n个数中找出最小的数是一个数量级,我觉得不可

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值