在正整数集上定义如下的迭代序列:

n → n/2 (若n为偶数)
n → 3n + 1 (若n为奇数)

从13开始应用上述规则,我们可以生成如下的序列:

13 → 40 → 20 → 10 → 5 → 16 → 8 → 4 → 2 → 1

可以看出这个序列(从13开始到1结束)共有10项。尽管还没有被证明,但我们普遍认为,从任何数开始最终都能迭代至1(“考拉兹猜想”)。
从小于一百万的哪个数开始,能够生成最长的序列呢?
注: 序列开始生成后允许其中的项超过一百万。

public class Collatz_12 {/*input: 数字num* output: 这个序列的项数 count* */public static int Collatz(int num) {int count = 1;  //记录序列的个数while(num > 1) {                  // num是偶数if(num % 2 == 0) {num = num / 2;    count ++; }//num是奇数else{num = num * 3 + 1;count ++;}                      }return count;}public static void main(String[] args) {int max = 0;  //最长序列的项数int n = 0;   //最长序列数for(int i=2; i<1000000; i++) {        if(Collatz(i) > max) {n = i;max = Collatz(i);}}        System.out.println(max);System.out.println(n);
  1. Java中有三种移位运算符

<< : 左移运算符,num << 1,相当于num乘以2

>> : 右移运算符,num >> 1,相当于num除以2

>>> : 无符号右移,忽略符号位,空位都以0补齐

12 最长考拉兹序列相关推荐

  1. ACMNO.12有一分数序列: 2/1 3/2 5/3 8/5 13/8 21/13...... 求出这个数列的前N项之和,保留两位小数。 输入 N 输出 数列前N项和 样例输入 10

    题目描述 有一分数序列: 2/1 3/2 5/3 8/5 13/8 21/13...... 求出这个数列的前N项之和,保留两位小数. 输入 N 输出 数列前N项和 样例输入 10 样例输出 16.48 ...

  2. 3.算法的复杂度分析

    算法 **算法(Algorithm)**是对某一个或者某一类问题的解决方案的描述,根据问题的输入,在有限的计算时间里输出预期的结果.不同的算法解决问题所需的时间和空间可能会不同,通常用时间复杂度和空间 ...

  3. 新手探索NLP(八)——序列标注

    转载自知乎https://zhuanlan.zhihu.com/p/50184092 NLP中的序列标注问题(隐马尔可夫HMM与条件随机场CRF) Introduction 序列标注问题(sequen ...

  4. Oracle对象之序列

    序列:可供多个用户来产生唯一数值的数据库对象 可以认为和mysql中的auto_increment功能类似 注意 CURRVAL: 返回序列的当前值. NEXTVAL: 序列递增,返回下一值. 你不能 ...

  5. python中的序列类型数据结构元素的切片操作_浅析python中的分片与截断序列

    浅析python中的分片与截断序列 序列概念 在分片规则里list.tuple.str(字符串)都可以称为序列,都可以按规则进行切片操作 切片操作 注意切片的下标0代表顺序的第一个元素,-1代表倒序的 ...

  6. hutool 取前12个月_Excel – 创建 12 个月的工资表模板,我只要 20 秒

    看到这个标题,是不是以为 20 秒是在夸大其词?这还真不是! 今天的教程,每个环节我都采用了最优化的技巧,如果完全按照我的方法操作,20 秒其实都不需要. 案例: 下图 1 是一张空的全年工资表模板, ...

  7. python counter 出现次数最少的元素_[PY3]——找出一个序列中出现次数最多的元素/collections.Counter 类的用法...

    问题 怎样找出一个序列中出现次数最多的元素呢? 解决方案 collections.Counter 类就是专门为这类问题而设计的, 它甚至有一个有用的 most_common() 方法直接给了你答案 c ...

  8. PUCCH(3)matlab验证ZC序列的性质

    目录 1.自相关特性 2.ZC序列的低峰均比 3.ZC序列的傅里叶不变性 4.ZC序列从时域上看是恒定幅度,从频域上看仍是恒定幅度. (1)时域上恒定幅度 (2)频域上恒定幅度 (3) 同一个ZC序列 ...

  9. 4月19日读书笔记——第二章序列构成的数组(1)

    流畅的python 第二章 序列构成的数组 在这之前,我想要先知道什么是序列.维基百科的答案是 数学上,序列是被排成一列的对象(或事件):这样,每个元素不是在其他元素之前,就是在其他元素之后. 例如: ...

  10. GeoGebra笔记10 :Sequence序列

    Sequence(表达式,变量,初值,终值,增量) Sequence(n^2,n,1.10,0.2) stroke1用笔划线 Sequence(Rotate(stroke1,(n 30)"a ...

最新文章

  1. 如何实现linux+windows双系统启动
  2. Scala数组元素的修改update
  3. 博士申请 | 上海财经大学语言智能实验室招收2022年秋季入学博士生
  4. 推荐系统的构建:从经典到深度学习方法
  5. C#基础回顾:GridView全选演示
  6. 计算机网络部分(共44题),全国自学考试自考04741计算机网络原理4月考试真题
  7. 【安卓开发 】Android初级开发(九)Android中封装View提供接口供点击事件回调的方法及使用
  8. 蓬勃发展的社区将帮助您的项目成功的6种方式
  9. python彩票结果分析_天啦噜!Python多线程居然是骗人的?
  10. c#ref和out的相同点_C#中使用ref和out一点认识!
  11. 为什么打完篮球后手接触篮球杆会有触电感?
  12. 软件开发再编写过程中,要尽可能地让开发者再后来可以很容易地找到软件的编写逻辑和思路结构。这才是我们需要追求的。...
  13. aclocal-1.16:未找到命令
  14. IPTV系统搭建网络盒子APK和后台管理软件
  15. linux svnadmin,linux安装centos7.5基于SVN+Apache+svnadmin实现SVN的web管理
  16. Microchip PIC系列8位单片机入门教程(五)定时器
  17. 大数据学习教程之java SE 教程
  18. 用计算机写文章 单元备课,备课写教案
  19. java将前端传给后端的文字写入到word中
  20. 现在大火的低代码是怎么回事?从实现原理谈谈低代码

热门文章

  1. Android百度地图自定义添加Marker点
  2. Mac连接Ubuntu服务器并用屏幕共享app显示远程应用图形界面
  3. 高清车牌识别系统无法连接服务器,智能停车场高清车牌识别系统,常见的故障及解决方法!...
  4. android vendor接口,HIDL众多service在那启动的--/vendor/etc/init/android.hardware.*@2.0-service.rc...
  5. 高德地图Amap常用功能总结
  6. 进入网页就自动弹出层
  7. 小工程结算书范本_工程结算书范本.doc
  8. 计算机技能鉴定高级,职业技能鉴定计算机(高级)试题.pdf
  9. redhat 6.5安装oracle时出现java异常_Redhat6.2安装Oracle11g客户端及遇到的问题分析
  10. C#使用iTextSharp打印PDF