- 博客(9)
- 资源 (5)
- 收藏
- 关注
原创 算法1:汉诺塔问题-简易版
Question:汉诺塔问题,经典问题不赘述,加一个简单的限制:不能从最左侧的塔直接移动到最右侧的塔,也不能从最右侧的塔直接移动到最左侧的塔,必须经过中间,求当塔有N层的时候,打印最优移动过程和最优移动步数。think:递归的思路:每个棋子移动的情况,概括起来共有以下几种情况:1:从 left 移动到 mid2:从 mid 移动到 left3:从 mid 移动到 righ...
2019-11-24 22:50:01 389
原创 算法1:仅用递归函数和栈操作,逆序一个栈
Question:一个栈一次压入1、2、3、4、5,那么从栈顶到栈底分别为5、4、3、2、1。将这个栈转置后,从栈顶到栈底为1、2、3、4、5,也就是实现栈中元素的逆序,只能通过递归函数来实现,不能用其他数据结构。think:提醒到适用递归,意味着可以由少及多的解决这个问题。例:①:栈中一个元素,先取出元素,记录,判断:栈空,放回,转置完成。②:栈中两个元素,先取出第一个,...
2019-11-23 11:07:52 188
原创 算法3:生成窗口最大值数组
Question:有一个整形数组arr 和一个大小为w 的窗口从数组的最左边滑到最右边,窗口每次向右滑动一个位置;如果数组长度是n,窗口大小是w,则一共产生n-w+1 个窗口,请实现一个函数,输入:整形arr数组,窗口大小w输出:一个长度为n-w+1 的数组res,res [i] 标识每种窗口状态下掉最大值。例:【3,4,6】7,9,2,4 最大值:6 3【4,6,...
2019-12-04 23:48:55 200
转载 scala 中_ 的作用
1、作为“通配符”,类似Java中的*。如import scala.math._2、向函数或方法传入可变参数时不能直接传入Range或集合或数组对象,需要使用:_*转换才可传入;:_*作为一个整体,告诉编译器你希望将某个参数当作参数序列处理!例如val s = sum(1 to 5:_*)就是将1 to 5当作参数序列处理。3、指代一个集合中的每个元素。例如我们要在一个Array a中筛出...
2019-03-18 20:48:53 486
原创 SimpleDateFormat 线程安全问题
在项目中,经常需要将日期在String和Date之间做转化,此时需要使用SimpleDateFormat类。使用SimpleDateFormat类的parse方法,可以将满足格式要求的字符串转换成Date对象,使用SimpleDateFormat类的format方法,可以将Date类型的对象转换成一定格式的字符串。重点注意:SimpleDateFormat并非是线程安全的。1.测试代码...
2019-03-15 16:44:04 256
原创 异常处理:api服务大量链接超时
现象:大量访问超时 跟进:定位log,有大量长耗时请求。查看网络连接数netstat -ant|awk '/^tcp/ {++S[$NF]} END {for(a in S) print (a,S[a])}'LAST_ACK 14SYN_RECV 348ESTABLISHED 5938FIN_WAIT1 229FIN_WAIT2 30CLOSING 33TIME_WAIT 1...
2019-03-13 17:50:58 1953
原创 scala(2)
第2课:Scala面向对象彻底精通及Spark源码阅读本期内容:1 Scala中的类、object实战详解2 Scala中的抽象类、接口实战详解3 综合案例及Spark源码解析一:定义类class HiScala{private var name = "Spark"def sayName(){println(name)}def getName = name}Scala中,变量与类中的方法是同等级的...
2018-06-03 16:10:11 181
原创 scala(1)
第一课:Scala入门1:Scala的重大价值2:Scala基础函数入门实战3:Scala函数入门实战4:Scala中的Array,Map,Tuple实战5:综合案例及Spark源码解析Scala与Java的关系:一:它们都是基于JVM的,但Scala可以调用Java的任何功能,比如Spark运行在Hadoop上,它可以调用Hadoop上的一切功能。二:你可以认为Scala它是一个升级版的Java...
2018-06-03 16:09:14 217
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人