美文网首页
并不是递归调用的貌似递归代码

并不是递归调用的貌似递归代码

作者: liqing151 | 来源:发表于2018-05-30 18:53 被阅读6次
def simple(seed: Long): RNG = new RNG {
        def nextInt = {
            val seed2 = (seed * 0x5DEECE66DL + 0xBL) &
                    ((1L << 48) - 1)
            ((seed2 >>> 16).asInstanceOf[Int],
                    simple(seed2))
        }
    }

  • simple函数返回了一个RNG的子类对象,并定义了该子类对象的nextInt函数
  • 这并不是递归调用,因为只有在nextInt被调用的时候才会再次调用simple函数,该函数又定义了一个RNG的子类,并在其实现的nextInt函数中放入了simple
  • 并不是递归,因为只有在方法被调用时,simple才再次被使用

相关文章

  • 并不是递归调用的貌似递归代码

    simple函数返回了一个RNG的子类对象,并定义了该子类对象的nextInt函数这并不是递归调用,因为只有在ne...

  • Python语言程序---代码复用与函数递归(二)

    Python语言程序---代码复用与函数递归(二) 函数递归 在函数定义中,调用函数自身的方式就是递归。 递归并不...

  • JavaScript函数高级

    一、函数的递归(1) 什么是递归函数递归recursion,描述了函数在自己的内部代码中调用自身的过程(2) 递归...

  • 递归

    递归不用循环,调用自身循环,上诉代码为递归,它的普通形式如下:

  • 分段做事+返回值:双枪破递归recursion 2019-11-

    1.啥是递归 函数自己调用自己是递归 在上面的代码中,函数func在自己的函数体中调用了自己,就是递归 2.递归怎...

  • day07递归-迷宫问题

    递归 概念: 递归就是自己调用自己,每次调用都传入不同的变量,递归有助于编程者解决复制的问题,同时也可以让代码变得...

  • 结构与算法(04):排序规则与查找算法

    一、递归算法 递归就是方法自己调用自己,每次调用时传入不同的变量,可以让代码变得简洁。递归算法在计算机科学中是指一...

  • 递归函数基础

    函数代码中调用自己时称为递归,该函数被称为递归函数。递归函数是一个很高效的 开发技巧,可以极大的简化代码提高开发效...

  • 重复

    递归在自己的定义中调用自己的函数叫做递归函数(Recursive Function)。 尾递归普通的递归调用并不高...

  • 【算法】递归算法里面的瑰宝-尾递归

    Attention :本文的示例代码使用的Kotlin代码 递归算法里面的瑰宝 了解尾递归之前,先了解一下尾调用 ...

网友评论

      本文标题:并不是递归调用的貌似递归代码

      本文链接:https://www.haomeiwen.com/subject/psuxsftx.html