`
wudixiaotie
  • 浏览: 136863 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

变量互换值的速度分析

    博客分类:
  • ruby
阅读更多

ruby中交换两个变量的值有一种简便写法:

a = 1
b = 2
a, b = b, a
puts a
# 2
puts b
# 1

 经过我的测试发现这种方式的写法比自己定义个临时变量慢很多,测试代码如下(一个简单的冒泡排序算法)

arr = []
rand = Random.new
4000.times do
  arr.push(rand(1000000))
end

# pop sort
def pop1(arr_t)
  i = 0
  arr_t.length.times do
    min = arr_t[i]
    (arr_t.length - i).times do |j|
      if min > arr_t[i+j]
        min = arr_t[i+j]
        arr_t[i+j] = arr_t[i]
        arr_t[i] = min
        next
      end
    end
    i += 1
  end
end


def pop2(arr_t)
  i = 0
  arr_t.length.times do
    min = arr_t[i]
    (arr_t.length - i).times do |j|
      if min > arr_t[i+j]
        min = arr_t[i+j]
        arr_t[i], arr_t[i+j] = arr_t[i+j], arr_t[i]
        next
      end
    end
    i += 1
  end
end


pop1(arr)
# =》1.7s
pop2(arr)
# =》1.3s

 

0
0
分享到:
评论

相关推荐

    GA两个变量求函数最小值

    对于两个变量的情况,可以采取简单的交叉策略,如单点交叉或均匀交叉,将两个个体的变量值在某个随机点上互换。 5. **变异操作**:为保持种群多样性,对部分个体进行随机变异。例如,可以对每个变量加上一个小的...

    电路分析基础(PPT)

    - **功率**:单位时间内完成的工作量,表示能量传输的速度。 #### 1.3 欧姆定律 - 表达了电压、电流和电阻之间的关系:\(V = IR\),其中 \(V\) 代表电压,\(I\) 代表电流,\(R\) 代表电阻。 #### 1.4 理想电源 -...

    统计学多选借鉴.pdf

    7. KMO统计量:KMO值用于检验变量之间是否适合进行因子分析,值越接近1,表示因子分析效果越好。 8. 调查对象与填报单位:在工业企业生产设备调查中,调查对象是工业企业的全部生产设备,每台设备是调查单位,而每...

    单纯形算法的MATLAB实现

    5. **行交换**:通过行交换,将选定的进基变量和出基变量的位置互换,更新单纯形表格。 6. **计算新解**:根据行交换后的单纯形表格,计算新的基解。 7. **判断停止条件**:如果目标函数值达到最优或者没有可行的进...

    统计学选择题判断题归纳(含答案解析).doc

    3. **离散型变量与数列**:离散型变量的值通常是整数,确实适合编制单项式数列,如人口数、订单数等。 4. **众数的存在**:并非所有变量数列都有众数,例如均匀分布就没有明显的众数。 5. **偏态分布**:如果变量...

    两数交换的三种方法C#_java 两数交换的三种方法 两数交换方法

    在编程领域,两数交换是基础且常见的操作之一,它涉及到变量值的互换,而无需额外的存储空间。在给定的代码片段和描述中,我们探讨了使用C#和Java实现两数交换的三种常见方法。这些方法不仅展示了基本的编程技巧,还...

    【气象水文学习资料】Nctoolbox 使用说明中文版.zip

    这要求先创建或获取变量的 ID,然后指定变量值。 4. **创建和修改 NetCDF 文件**:`nccreate` 用于创建新的 NetCDF 文件,`ncdefdim` 定义维度,`ncdefvar` 创建变量。如果需要修改已有的文件,`ncendef` 会将文件...

    统计学原理小抄21完整版电大小抄2011中央电大专科考试小抄.doc

    15. 总体单位总量与标志总量的转换:在特定条件下,两者可以互换,如通过加权平均。 16. 相对指标的表现形式:既可以是无名数,也可以是有名数。 17. 众数的概念:众数是数据集中出现频率最高的值。 18. 比例指标...

    统计学原理复习题.doc

    16. **加权算术平均数**:确实受变量值和权数共同影响。 17. **方差与离散系数**:离散系数是方差与平均数的比值,题目中计算平均数的表述错误。 18. **抽样调查**:抽样目的是推断总体,正确。 19. **假设检验**...

    河南省镇平县第一高级中学2017_2018学年高一数学3月第四次周考试题

    - 第14题的程序执行后,a和b的值互换,因此输出a为3,b为2。 15. **频率分布直方图** - 第15题根据直方图分析,区间[0.5,1.5)内的频率为0.2,因此50人中有50 * 0.2 = 10人在该区间锻炼。 16. **函数计算** - 第...

    zixiangguanhanshu_自相关函数_

    - 噪声分析:在信号处理中,ACF用于估计信号的噪声成分,通过分析自相关函数的衰减速度可以判断噪声类型。 - 信号滤波:在滤波器设计中,自相关函数被用于定义滤波器的特性,如消除噪声或提取特定频率成分。 - 时间...

    中考数学总复习单元综合检测(四)函数(扫描版,无答案) 试题.doc

    1. **函数定义**:函数是一种数学关系,它规定了输入值(自变量)与输出值(因变量)之间的对应关系。在中学阶段,通常会强调一对一、一对多和多对一的对应关系,其中一对一的对应关系是最重要的函数类型。 2. **...

    财经类专业知识模拟考试题2(有答案).pdf

    这些知识点涵盖了统计学的基础概念,如统计变量类型、统计表的结构、数据整理方法、抽样调查目的、时间序列分析、综合指数的应用以及资金时间价值等,对于财经类专业学习者来说是非常重要的基础内容。

    高一数学下册七校联考试题[精选].doc

    5. 多元函数的值:第6题中的"设的值是"可能是对多元函数中未知变量的求解,可能涉及到多元函数的定义、链式法则或消元法。 6. 最值问题:第7题讨论函数在特定区间上的最值,需要利用函数的单调性、极值点等概念来...

    高考文科函数与导数一.pdf

    9. 函数单调性:1( )21(0),f xxxx的单调性分析,判断函数是否有最大值或最小值,或增减性。 10. 对数函数的比较:通过比较底数和真数,可以判断对数函数的大小关系。 11. 反函数的求解:2( )(1)1(1)fxxx的反函数是...

    第04章-MATLAB程序设计-例题源程序 .pdf

    例如,`exch`命令文件通过变量交换实现了`a`和`b`的值互换。而函数文件,如程序2,定义了一个名为`exch`的函数,它接收输入参数`a`和`b`,并返回交换后的值。这种分离使得函数可以独立于当前工作空间进行调用和复用...

    分析PHP中单双引号的误区和双引号小隐患

    单引号提供更快的执行速度,适用于不包含变量的字符串;双引号则支持变量解析和转义字符,但在使用时需注意防止代码注入。根据具体场景选择合适的引号类型,不仅可以提高代码的效率,也能确保程序的安全性。在编写...

    北京交通大学970电路2021年初试大纲.pdf

    - **电阻的三角形联结与星形联结的等效互换**:两种不同的电阻联结方式可以通过特定公式进行转换,以便于电路分析。 - **电压源、电流源的串联和并联**:串联和并联可以简化电路结构,便于分析。 - **实际电源的两种...

Global site tag (gtag.js) - Google Analytics