一道微软以前的面试题,题目大概是,用一张长条纸,将其中一面保持对向自己,将它向上对折一次,展开后会有一个凹的折痕,而对折一次时再向上对折一次,展开后有三条折痕,...
发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/120775.html原文链接:https://javaforall.cn
一开始从一个实际问题出发,最后得出了一个简洁的数学表达,果然是代码令我愉快。
上周末,愉快的家庭聚餐后, 关于饭后谁洗碗这个世纪问题, 悠爸和小悠产生了严重分歧。 悠爸作为数学控, 设计了一个坑娃完美解决办法。...“ 都不乐意洗碗, 不如……” 问题来了, 你觉得最后会是谁去洗碗呢? 折纸这件事 大家应该都再熟悉不过了, 可是你有没有想过, 一张纸最多能对折多少次呢?...为什么看似简单的折纸这么难呢? 其实用基础的算术知识就能解释了。 我们一起来算算 每对折一次, 厚度就变成之前的两倍。 对折6次以后, 厚度变成最初的64倍。...猜猜看, 折纸实验的最佳用纸是什么? 哈哈,就是我们日常用的 厕纸。 于是她用 1200米的厕纸 耗时七个小时, 最终完成了12次的折叠。...看过目前人类的折纸极限, 又有了一个 新问题: 假设一张厚度为0.1毫米的纸, 可以让你不断对折, 达到100层摩天大楼那么高, 需要折几次?
韩国电子巨头三星公司还没推出曲面显示屏智能手机Galaxy Round和LG推出G Flex很久之前,加拿大皇后大学人类媒体实验室的团队就研发出Paperpho...
论文题目挺长,《不插电的微型折纸机器人自行折叠、行进、游泳并降解》,算是把该机器人的特点全说了。 相应的2分钟视频中,一张小小的薄膜被钳子置于平台上,自己折叠,变身一个折纸蜘蛛形状的机器人。...只要稍微加热,中间的塑料收缩,有刻痕的地方按预先的设定向后折(如图中的点划线)或向前折(图中的实线),将表面上的一小块钕永磁铁包裹在内,自动变成折纸蜘蛛形状的机器人,立即就能走动。 ...那么,为什么这个机器人要选取折纸的形状呢?论文给出了很好的回答。由于所加的磁场只是普通的15Hz振动场,不能拖着机器人往指定方向前进,只能让它持续振动。...折纸机器人现在的形状,有意设计成结构不对称,使它在前后脚轮流触地时造成质心平衡点的偏离,机器人就朝着自己的前方行进了。所有这些机制,在机器人还是一个平面时都不起作用。 ...研究者表示,他们的试验重在验证微型折纸机器人的思路,以及它的可行性。而与会同行对研究者的演示方式也一致点赞。 真没想到这样细小的机器人会有如此复杂的功能。
结果确实是 0.060000000000000005 0.5800000000000001 401.49999999999994 1.2329999999999999 Java中的简单浮点数类型float...这个问题相当严重,如果你有9.999999999999元,你的计算机是不会认为你可以购买10元的商品的。 在有的编程语言中提供了专门的货币类型来处理这种情况,但是Java没有。...现在让我们看看如何解决这个问题。 四舍五入 我们的第一个反应是做四舍五入。...也不能解决这个问题: System.out.println(new java.text.DecimalFormat("0.00").format(4.025));输出是4.02 现在我们已经可以解决这个问题了...;/** * 由于Java的简单类型不能够精确的对浮点数进行运算,这个工具类提供精 * 确的浮点数运算,包括加减乘除和四舍五入。
本文为《Java Coding Problems》读书笔记。学习语言从解决问题开始,《Java Coding Problems》一书中包含了Java编程中常遇到的一些问题。...57Working With Date And Time 58-77Type Inference 78-98Arrays, Collections, And Data Structures 99-128Java...I/O Paths, Files, Buffers, Scanning, And Formatting 129-148Java Reflection Classes, Interfaces, Constructors...书中以Java的方式解决诸多常见问题。后续文章中记录这些问题的解法,以此学习Java语言的常规技巧。...参考资料:https://learning.oreilly.com/library/view/java-coding-problems/9781789801415/。
局部变量,方法定义参数和异常处理器参数不会在线程之间共享,在栈内存中,不需要同步处理,因为栈内存是线程独享的,它们不会有内存可见性问题,也不受内存模型的影响。...Java线程之间的通信由Java内存模型(本文简称为JMM)控制,JMM决定一个线程对共享变量的写入何时对另一个线程可见。...实际应用:利用软引用和弱引用缓存解决OOM问题。...它用于指示合理的应用程序不应该试图捕获的严重问题,大多数这样的错误都是异常条件。 和RuntimeException一样, 编译器也不会检查Error。...那是否有办法绕过这个问题来编程,答案就是显示地传递类型标签。
【新智元导读】计算机折纸是计算机科学长期研究的一个问题,MIT的新论文提出一种新的通用折纸算法,能在保证最小的折缝数量的情况下折出几乎任何东西,包括1000种简单的纸鹤。...计算机科学界长期以来一直在计算机折纸问题上努力。1999 年,18 岁的滑铁卢大学博士生 Erik Demaine 发表了一篇论文,描述了一种算法判断如何将纸折叠到任何想象到的 3D 形状。...它是计算折纸领域的一篇里程碑意义的论文,但算法并没有产生出多少实用的折纸模式。因为它需要非常长的纸条,折叠许多次后就不那么牢固了。 ?...但Demaine早期的算法做出的折纸不是这样,杯子还会包括一个薄的纸条绕在圆上,因此可能不能盛得住水。 “新的算法能够得出更好、更逼真的折纸。”...最后,实现折纸的额外‘flash’结构隐藏在内部,因此看不见。”
且看视频: 视频1 4 Kings折纸之龙飞凤舞 如果你比较一下这个作品和之前的《4 Kings折纸》,那一定会感觉之前的作品只能算是个巧合的demo级别。...我们依旧从原理出发来想问题。从最顶级的群论的观点看,这些牌无非是处在关心正反和位置奇偶性状态的结构中,固定的初始牌叠加上固定的发牌,正反方向设置,确实能得到K的图案,很美。...好,解决了发牌自由度的问题,还有个问题,能不能洗牌呢?我们再往前建模,要保证最后4kings朝向不同,则发出去的牌也应该是只有4Kings在一个群内,其余牌另一个的。...注意这里由于牌叠起始位置0和1的区别以及平面坐标系原点设置的问题,二者奇偶性一一对应的可能性也有两种。...视频2 双层4Kings折纸魔术 下个系列见!
东京大学及麻省理工大学的Ryuma Niiyama及同事们发现,如果我们尝试着将可被印制和充气的塑料驱动器装在折纸上,它的确就是那么容易。 ?...老师演示了如何折纸模型和使用黏性驱动器。而参与者被要求自行创作。 我们观察到,一个简单的折纸与驱动器的结合,就可以产生不同的结果。下图显示的是活动中完成的折纸。...其中一位参与者表示,“这种驱动器是非常有趣的,并且随折纸方式变化,会有不同的挑战”:粘着驱动器使本已复杂的艺术折纸增加了更多的挑战。...驱动器对折纸艺术来说甚至是开发了另一个新的层级,正如一位与会者提到:“我非常喜欢它。它为我所爱的艺术,拓展了一个全新的层面。” ?...唯一潜在的问题是找到驱动这些装置的压缩空气。
还是先把表演视频放这给大家参考: 视频1 4 Kings 折纸 思考引入 我在一次课堂上演示完一般的集合和逻辑推理的演示后,我说用0和1来表达位置奇偶性以及正反状态的属性,那么,折叠操作会同时改变这两个属性...不过这里的拆解对我们研究清楚这个问题并没有帮助,我们不必在这里区分横纵坐标的不同,但一定是最开始思考过程里有意义的歧途。
近日,南开大学师生提出一种基于折纸结构的软体机器人,并探索了该软体机器人的结构设计与系统建模,让折纸艺术“活”了起来!...软体机器人的驱动源也多种多样,包括气动,介电,化学物质和折纸等。 折纸作为一门从二维到三维映射变换的艺术,是一种从平面到空间非光滑复杂曲面的拓扑同胚变换。那么折纸是如何应用于机器人设计的呢?...南开大学研发团队的这款折纸机器人结构类似于乐器手风琴,采用传统折纸艺术中经典图案。...可以说是中华传统文化和前沿科学知识的一次美妙交融~ 折纸机器人通过控制电机的旋转,实现折纸模块伸长、收缩及弯曲等运动。...▍未来将在多领域发光发热 其实早在2014年,美国哈佛大学科学家就以折纸为灵感,研究出一款可变形的折纸机器人,通电后就可以从扁平状态变成四条腿站立的机器人,无需人类帮助即可行走和转弯,可被用于进入灾区倒塌建筑中执行搜救任务
WebMvcConfigurer 四、使用Nginx配置 五、使用 @CrossOrgin 注解 Spring Cloud Gateway 跨域配置 --- 引言 我们在开发过程中经常会遇到前后端分离而导致的跨域问题...什么情况会跨域 同一协议, 如http或https 同一IP地址, 如127.0.0.1 同一端口, 如8080 以上三个条件中有一个条件不同就会产生跨域问题。...PATCH max-age: 3600 注意: 通过gateway 转发的其他项目,不要进行配置跨域配置 有时即使配置了也不会起作用,这时你可以根据浏览器控制的错误输出来查看问题...,如果提示是 response 中 header 出现了重复的 Access-Control-* 请求头,可以进行如下操作 import java.util.ArrayList; import org.springframework.cloud.gateway.filter.GatewayFilterChain
这两天出差,出发前开发同学提了一个问题,开会间隙,有了一些想法,java代码中和Oracle中均有可能出现此错误,记录于此。 一段mybatis的代码,查询一张表的数据,SQL类似如下, ?...开发库运行这段代码,正常返回,测试库运行这段代码,无记录返回的情况正常,只要有记录返回,无论有几条,均会报错,Numeric Overflow,注意这儿报的是java.sql.SQLException,...,有以下产品会出现错误, Bug 19019306 : ERROR UPDATING MEDIATOR INSTANCE: JAVA.SQL.SQLEXCEPTION: NUMERIC OVERFLOW...目前已经知道了问题,反过来看,首先程序报错Numeric Overflow,提示很清楚,就是有数据类型溢出了,但未出现ORA错误号,因此很有可能不是数据库中的问题,进一步使用SQL执行,未出现错误,说明很有可能是代码问题...我们可能经常碰见这样的问题,一条SQL,一段code,一个环境可以,另一个环境报错,我觉得首先需要考虑的,就是明确问题的范围,是SQL语句的问题,是代码问题,抽丝剥茧,大胆怀疑,细心验证,真相往往就只有一个
参考博客:https://blog.csdn.net/sinat_32238399/article/details/80512452
---- 在前后端分离开发条件下,几乎一定会遇到跨域问题。 同源策略 浏览器安全的基石是 同源策略,什么是同源策略呢? 协议相同。 域名相同。 端口相同。
日期格式化的跨年问题 通常格式化日期时,都是使用的YYYY/MM/dd来格式化日期,但是在遇到跨年日期时,就会遇到很神奇的现象,如下: 1 2 3 4 5 6 7 8 9 10 11 final...(DateTimeFormatter.java:1746) at java.time.format.DateTimeFormatter.format(DateTimeFormatter.java:1720...其实关于这类格式化字符需要注意大小写的问题,比如y和Y的含义也是不一样的。...参考链接 Java YYYY/MM/dd遇到跨年日期的问题 YYYY-MM-DD 的黑锅,我们不背! Java日期时间API系列19–Jdk8,ZonedDateTime和时区转换。...【java8中的时间操作】java8中获取月的最后一天或者总天数,JDK8 LocalDate AP localdate 比较两个时间_Java 8中处理日期和时间示例 日期格式‘YYYY-MM-DD’
使用static存在什么问题? 可以用来修饰:成员变量,成员方法,代码块,内部类等。...随着类的加载而加载 优先于对象存在 被类的所有对象共享 可以通过类名调用(静态修饰的内容一般我们称其为:与类相关的,类成员) 使用static存在什么问题?...2.5、java.lang 包下为什么要设置final?...3.1、原始数据类型和引用类型局限性 原始数据类型和 Java 泛型并不能配合使用 Java 的泛型某种程度上可以算作伪泛型,它完全是一种编译期的技巧,Java 编译期会自动将类型转换为对应的特定类型...基本数据类型是放在栈中还是放在堆中,这取决于基本类型在何处声明,下面对数据类型在内存中的存储问题来解释一下: 在方法中声明的变量,即该变量是局部变量,每当程序调用方法时,系统都会为该方法建立一个方法栈,
领取专属 10元无门槛券
手把手带您无忧上云