递归的几个demo
/**
* Created by root
* Description : 递归函数
*/
object RecursionTest {
def main(args: Array[String]): Unit = { // a到b的累加
def foo(a:Int,b:Int):Int ={
if (a > b) 0
else a + foo(a+1,b)
} println(foo(1,5)) // a的阶乘
def foo1(a:Int):Int={
if (a <= 1) 1
else a * foo1(a-1)
} println(foo1(5)) // a到b的平方和
def foo2(a:Int,b:Int):Int={
if (a > b) 0
else a * a + foo2(a+1,b)
} println(foo2(2,3))
} }
递归的几个demo的更多相关文章
- 042-PHP使用闭包函数递归无限级分类
<?php //使用闭包函数递归无限级分类 function demo($array){ # 用于存储递归后的队列 $data = []; # 递归函数 $func = function (&a ...
- 重新想象 Windows 8 Store Apps (17) - 控件基础: Measure, Arrange, GeneralTransform, VisualTree
原文:重新想象 Windows 8 Store Apps (17) - 控件基础: Measure, Arrange, GeneralTransform, VisualTree [源码下载] 重新想象 ...
- 2017/4/26-DOM解析XML文件
DOM解析XML 1.分析 DOM是JAVA自带的XML解析API.DOM首先将XML文件全部加载至内存中,然后再内存中创建DOM树,生成DOM树上的每个Node节点. 2.优点 1) 可以创建或修改 ...
- 背水一战 Windows 10 (79) - 自定义控件: Layout 系统, 控件模板, 事件处理
[源码下载] 背水一战 Windows 10 (79) - 自定义控件: Layout 系统, 控件模板, 事件处理 作者:webabcd 介绍背水一战 Windows 10 之 控件(自定义控件) ...
- C语言---斐波那契问题
最近学习了一个叫递归的概念,里面最著名的一个例子就是斐波那契问题,觉得很有意思,就来实现一下: 什么是斐波那契数列 斐波那契数列,又称黄金分割数列,值得这样一个数列:0.1.1.3.5.8.1 ...
- 全网唯一的纯前端实现的canvas支持多图压缩并打包下载的工具
技术栈: canvas jszip.js(网页端压缩解压缩插件JSZIP库) FileSaver.js(文件保存到本地库) 直接解读源码: <div class="cont" ...
- 前端实现的canvas支持多图压缩并打包下载的工具
# 技术栈 canvas jszip.js(网页端压缩解压缩插件JSZIP库) FileSaver.js(文件保存到本地库) 在线预览:http://htmlpreview.github.io/?ht ...
- CMake技术总结
在做算法部署的过程中,我们一般都是用C++开发,主要原因是C++的高效性,而构建维护一个大型C++工程的过程中,如何管理不同子模块之间的依赖.外部依赖库.头文件和源文件如何隔离.编译的时候又该如何相互 ...
- 递归小Demo
public class demo5 { public static void main(String[] args) { //初始值为100 int n = 100; ...
随机推荐
- 标签<view>文字自动换行
<view style='word-break:break-all;'>{{con.blog}}</view>
- JQ 获取窗体的高度
alert($(window).height()); //浏览器时下窗口可视区域高度 alert($(document).height()); //浏览器时下窗口文档的高度 alert($(docum ...
- asp.net http请求图
从网上看到的一些资源结合理解画出请求 没有详细细分,大体步骤请求如下图
- Qt中使用的C++知识和技能-你必须要了解的
如果你不确定在使用Qt编程时自己所掌握的C++知识是否够用,这一节的内容会帮到你.这里给出了Qt自身以及在使用Qt进行编程时涉及到的C++知识,因此,通过阅读本节,你会了解你是否缺少一些C++技能. ...
- hibernate+spring整合增删改事务错误
org.springframework.dao.InvalidDataAccessApiUsageException: Write operations are not allowed in read ...
- matlab中常用的函数
find()函数: 功能:用于返回矩阵中想要的元素的索引值: 用法: index = find(X), 当X为一个矩阵时,返回的index是一个列向量,表示矩阵X中非零值的索引值,这个索引值吧,是按把 ...
- Linux操作_磁盘管理_增加虚拟磁盘
环境:虚拟机 VM 12,Linux版本号 CentOS 7.3 1,在当前的虚拟机选项卡点击鼠标右键,选择“设置” 2,在弹出的对话框中左侧选中“磁盘”->点击下方“添加”按钮,在弹出的“添加 ...
- sqlite学习笔记1:编译数据库
首先说下我使用的是Linux环境 一 下载源代码 官网下载:点这里 二 编译 1 解压 下载完毕之后通常会在当前用户的"下载"文件夹中,首先cd到下载文件夹,然后创建一个文件件.用 ...
- NPOIHelp 按固定模板导出和直接导出
完整代码如下 using System; using System.Collections.Generic; using System.Data; using System.Text; using N ...
- Cisco配置VLAN+DHCP中继代理+NAT转发上网
实验环境: 路由器 使得TP-link 设置NAT转发使用,tp-link路由器网关设置成 192.168.30.254 (核心层)Cisco 3550三层交换机(型号C3550-I5Q3L2-M)配 ...