问题描述
ruby 中想对数组中间的一段进行排序,我知道可以这样:
a[1..2] = a[1..2].sort!
但这样会有一次拷贝,出于效率原因希望不产生任何拷贝,直接在原数组上排序。
问题解答
回答1:排序只是拷贝的数组的结构,数组内容不会被拷贝,所以对性能的影响是微乎其微的。
你多大的数据量会让这段代码成为性能瓶颈?
回答2:用sort排序方法会重新生成一个新数组,你可以利用数组下标取出元素进行比较,交换位置就可以了
问题描述
ruby 中想对数组中间的一段进行排序,我知道可以这样:
a[1..2] = a[1..2].sort!
但这样会有一次拷贝,出于效率原因希望不产生任何拷贝,直接在原数组上排序。
问题解答
回答1:排序只是拷贝的数组的结构,数组内容不会被拷贝,所以对性能的影响是微乎其微的。
你多大的数据量会让这段代码成为性能瓶颈?
回答2:用sort排序方法会重新生成一个新数组,你可以利用数组下标取出元素进行比较,交换位置就可以了
相关文章:1. javascript - 关于input="file",重复选择同一文件时不触发change事件的问题2. javascript - canvas使用toDataUrl()出错,img设置img.crossOrigin = "*"也没用。3. javascript - type="date"的默认值能改变为当天日期吗4. <tr valign="top"> 看不懂5. solaris基础和常用知识 (2)6. javascript - <input type="file">文件正在上传时需要有弹出框提示正在上传,上传完后弹出框消失,这个该如何写呢?7. type="text/css"是什么意思?8. javascript - 一个字符串转换成数字,例子就是a="2,322.222",b=’1,211.21’,如何在angualr中执行相减9. mysql - 使用hibernate连接数据库时,数据库版本过高不支持关键字"type" ;10. 发现 <li><a href="/index.php">回到前台</a></li>这样回到首页后,不是登录状态
网公网安备:皖ICP备2020019022号-3 Copyright ¢ 2020-2025 Powered by V1.8 All Rights Reserved 技术支持:乐呵呵网
声明:本站所有资源以学习为主