scala - scala:用结构归纳证明两个函数
问题描述
我在scala中有以下两个功能:
def sum(ls: List[Int]): Int = ls match
{
case Nil => 0
case l::ls => l + sum(ls)
}
def turn(ls: List[Int]) : List[Int] = ls match
{
case Nil => List()
case l::ls => append(turn(ls), List(l))
}
函数sum(ls)
正在计算其元素的总和,并turn(ls)
以相反的顺序返回给我一个元素列表。sum(List(2, 13, 4))
是 19 并且turn(List(2, 13, 4))
是List(4, 13, 2)
我怎样才能用(结构)归纳表明
sum(cs) == sum(turn(cs))
持有?
解决方案
推荐阅读
- java - 运行 webdriver.io 测试时出现“错误:未找到:java”
- mysql - 如何仅使用更新查询在 MySQL 中的表中插入图像
- python - 如何解决绘制宽度值大于半径的圆时引发的ValueError是pygame模块?
- python - 如何删除输出每行末尾的额外零?
- c# - 错误请求使用 c# 和 vnet 创建 Azure Batch 用户订阅池
- html - Bootstrap toast 出现在元素后面
- php - 在 Laravel 中组合数组索引值
- python - PYTHON 使用 Gmail api/imaplib 使用多个帐户登录
- python - 在python矩阵中存储日期时间
- python - 像图形一样遍历二维数组