在这里计算可能性的数量实际上有一个非常巧妙的解决方案(在我看来).

请注意,对于n个音符,如果第一个音符连接到第二个音符,则可能的连接数(C(n))是C(n-2).否则它是C(n-1).这意味着

C(n) = C(n-1) + C(n-2)

C(1) = 3 //Either the first and second are connected,

//neither are connected, or the end is connected.

C(0) = 2 //Either the end is connected or it isn't

注意:如果单个音符示例中的最后一个音符可以“连接到它自身”G(0)是1,否则,它是0.此外,我不清楚EE和E E-是否是分开的,如果它们不是那么,C(1)是2而不是3.注意这些只适用于0或1的序列,你必须在实际函数C(n)之外有一个if语句来返回1而不是2.否则它拧紧整个复发.有点乱,但这是算法中真实世界数据的本质

这意味着你基本上有一个斐波那契系列的变种!好吧?

数据表示

我会有一份n布尔名单.数组可以正常工作.如果连接了2个音符,则数组中的该条目应为true.我将索引0作为第一和第二个音符的连接,索引n-1是最后一个音符是否连接到任何东西.

排列生成

我们计算可能性总数的方式非常适合于生成方法(G(n)).对于n,我们需要将E-E加到G(n-2)和E到G(n-1).

在这种复发的基础上,我们有:

G(0) = {E, E-}

G(1) = {E-E, E E, E E-}

java 计算组合_java – 计算所有可能的组合相关推荐

  1. java 递归编译_java计算x^n的递归方法?求高手给个算法最佳的 最好能编译通过 本人处于java初学者时期^^...

    java计算x^n的递归方法?求高手给个算法最佳的 最好能编译通过 本人处于java初学者时期^^ 关注:193  答案:4  mip版 解决时间 2021-02-03 20:14 提问者西伯利亚狼 ...

  2. java 间隔分钟_java 计算两个 日期时间 相间隔多少天小时分钟 等

    1.时间转换data默认有toString() 输出格林威治时间,比如说Date date = new Date(); String toStr = date.toString(); 输出的结果类似于 ...

  3. java 周次_JAVA计算学校学期周次

    JAVA计算学校学期周次 2020-09-09 / 0 评论 / 313 阅读 / 正在检测是否收录... 09/09 package com.zs.create.test; import java. ...

  4. java 月份间隔_java计算两个日期之间相隔的月份(向下取整)

    最近需求里面有个需要计算两个日期之间相隔的月份,写起来还挺繁琐,需要将各种情况都要考虑到,写了一个作为以后自己的工具吧. //获取哪一天 public static int getDay(Date d ...

  5. java 计算九宫格_Java计算手机九宫格锁屏图案连接9个点的方案总数

    (一)问题 九宫格图案解锁连接9个点共有多少种方案? (二)初步思考 可以把问题抽象为求满足一定条件的1-9的排列数(类似于"八皇后问题"),例如123456789和9876543 ...

  6. java计算工龄_java计算工龄

    计算工龄原则:若是2000-10-12作为开始工作时间,则到下一年的2001-10-13算为一年.有个bug,不满一年的工龄是错误的. import java.util.Date; import ja ...

  7. java 天数计算日期_Java 计算日期间天数与日期推算等操作

    package com.yh.emmm.pattern; import java.time.LocalDate; /** * 计算两个日期之间的天数 * * @author 枫茗丿love */ pu ...

  8. java 计算时差_java计算时间差的几种方法

    用JAVA计算日期,时间差的几种方法 1. 手工计算 2.采用一个三方的jar包(Joda time library) 3. 利用TimeUnit类(java.util.concurrent 包中) ...

  9. java计算平均值_Java计算平均成绩

    编写一个程序,根据用户输入的总人数和总成绩计算平均成绩.要求程序能够处理总人数或者总成绩不是数字时的情况. 根据题目要求得知,在程序中需要对多种异常情况进行不同的处理.此时就用到了在<Java ...

最新文章

  1. Java注释(Annotation)详解
  2. boost::type_index::type_id相关的测试程序
  3. 《从0到1学习Flink》—— 介绍Flink中的Stream Windows
  4. Spring AOP注解方式实现
  5. Keil5 EventRecorder 的STDOUT输出丢包率较大现象
  6. Kewail-邮件短信接口的基础教程
  7. jieba库词频统计_运用jieba库进行词频统计
  8. ROS学习笔记一:安装配置ROS环境
  9. Drupal 更新开源编辑器 CKEditor,修复两个 XSS 漏洞
  10. 数据分析 -- 流程
  11. Android——从HellowWorld开始
  12. 如何将mp4视频转换成flv格式
  13. powerdesign如何利用表导出sql
  14. java speex回声消除_android – Speex回音消除配置
  15. java真幻想三国志攻略_《真幻想三国志》剧情详尽攻略一
  16. iOS 直播间礼物动画队列
  17. 什么是好的录屏软件?5 款值得收藏的屏幕录制软件
  18. undefined control sequence_control两个超级实用的短语解析
  19. python梨视频爬虫下载,反反爬
  20. iOS音频AAC视频H264编码 推流最佳方案

热门文章

  1. 兔子繁殖问题python编程_C语言编程:兔子繁殖问题
  2. webpack 5高级配置优化
  3. VMware下安装虚拟机windows server 2016
  4. 一对一、一对多、多对多(实操)
  5. 饿了么商家开放平台踩坑记录1,php更新商品信息提示业务异常BUSINESS_ERROR by勤勤学长 318692996
  6. 收集了几个h5案例 与大家分享一下
  7. demo h5 touch 移动_H5案例分享:移动端touch事件判断滑屏手势的方向
  8. 微软日语输入法用法说明
  9. 蓝桥杯 Python 练习题 Fibonacci数列
  10. 如何在WordPress中显示链接的实时预览