启发式算法(Heuristic Algorithm)是相对于最优化算法提出的。 它有不同的定义:
Java 8 的一个重要新特性就是 Stream。 Stream 是用函数式编程方式在集合类上进行复杂操作的工具,其集成了 Java 8 中的众多新特性之一的聚合操作,开发者可以更容易地使用 Lambda 表达式,并且更方便地实现对集合的查找、遍历、过滤以及常见计算等。
在国内 Git clone 仓库奇慢无比,通过以下配置可以提升下载速度。 git config --global http.postBuffer 524288000
记录一些 Scala 的学习资料,感谢 @hongjiang_wang 的整理。 原帖地址 Akka Actor 里的偏函数与性能 Patterns.ask 是使用一个临时创建的 actor 发消息而非自身 对 actor 的邮箱计数 Never ever block an actor 模式匹配 话说模式匹配(1) 什么是模式? 话说模式匹配(2) scala 里是怎么实现的? 话说模式匹配(3) 模式匹配的核心功能是解构! 话说模式匹配(4) 赋值语句与模式匹配 话说模式匹配(5) for 表达式中的模式匹配 话说模式匹配(6) case 类的细节 话说模式匹配(7) 一个构造器模式的例子(by case class) 话说模式匹配(8) 一个抽取器的例子 类型相关 scala 类型系统:1) 类型与类 scala 类型系统:2) classOf 与 getClass 方法的差异 scala 类型系统:3) 单例类型 scala 类型系统:4) 内部类,路径依赖类型&类型投影 scala 类型系统:5) 结构类型 scala 类型系统:6) 复合类型与 with 关键字 scala 类型系统:7) 中缀类型 scala 类型系统:8) type 关键字 scala 类型系统:9) this 别名&自身类型 scala 类型系统:10) 交集类型与联合类型 scala 类型系统:11) upper bounds & lower bounds scala 类型系统:12) view bounds scala 类型系统:13) context bounds scala 类型系统:14) multiple bounds scala 类型系统:15) 协变与逆变 scala 类型系统:16) 函数类型 scala 类型系统:17) 结构类型的细节问题 scala 类型系统:18) 不稳定(volatile)类型 scala 类型系统:19) Manifest 与 TypeTag scala 类型系统:20) 数组类型 scala 类型系统:21) type specialization 与类爆炸 scala 类型系统:22) 类型约束与特定方法 scala 类型系统:23) 用类型证明实现联合类型 scala 类型系统:24) 理解 higher-kinded-type scala 类型系统:25) type lambda scala 类型系统:26) type classes 模式 scala 类型系统:27) 回顾常见的 type classes scala 类型系统:28) 依赖类型 scala 类型系统:case class 与代数数据类型 scala 类型系统:类型推导 scala 类型系统:柯里-霍华德同构 scala 类型系统:值类型与数组 scala 类型系统:Null 与 Nothing,造型问题 scala 类型系统:值类型的细节 scala 类型系统:通用特质(universal traits) scala 类型系统:值类型的装箱问题 scala 类型系统:值类型的一些限制 Shapeless shapeless(1): 从方法与函数的多态谈起 shapeless(2): 对函数(值)实现参数化多态 类型推导相关 泛型方法转换为部分应用函数时的类型推导问题 Spray spray 中的 Magnet 模式: typeclass 的一种特定方式 Monads & Monoids 我所理解的 monad(0) 我所理解的 monad(1):半群(semigroup)与幺半群(monoid) 我所理解的 monad(2):fold 与 monoid 我所理解的 monad(3):半群(semigroup)与并行运算 我所理解的 monad(4):函子(functor)是什么 我所理解的 monad(5):自函子(Endofunctor)是什么 我所理解的 monad(6):从组合子(combinator)说起 我所理解的 monad(7):把 monad 看做行为的组合子 翻译&笔记 Programming in Scala 的阅读笔记 Effective Scala 中文版 翻译 monads-are-elephants 第一部分 翻译 monads-are-elephants 第二部分 翻译 monads-are-elephants 第三部分 Scala pitfalls scala 雾中风景(0): 序 scala 雾中风景(1): lambda 表达式的缩写 scala 雾中风景(2): 小括号与花括号 scala 雾中风景(3): for 表达式的背后 scala 雾中风景(4): Unit 类型 scala 雾中风景(5): 中缀表达 scala 雾中风景(6): 内部类与模式匹配 scala 雾中风景(7): val x:Int = x + 1 的问题 scala 雾中风景(8): 高阶函数与 Unit 的谜题 scala 雾中风景(9): List(1,2,3) == Seq(1,2,3) ? scala 雾中风景(10): 逆变点与协变点 scala 雾中风景(11): isInstanceOf 与类型擦拭 scala 雾中风景(12): App 特质的延迟初始化 scala 雾中风景(13): 模式匹配中的逻辑或 scala 雾中风景(14): trait 的泛型参数为何不支持 context bounds scala 雾中风景(15): class A { type T }与 class A[T] {} scala 雾中风景(16): println(1,2,3)为什么 work? scala 雾中风景(17): toSet()的谜题 scala 雾中风景(18): postfix operator 的问题 scala 雾中风景(19): MutableList 与 mutable.LinkedList 的问题 scala 雾中风景(20): MutableList 迭代器的 bug scala 雾中风景(21): auto-tupling 与 auto-detupling scala 雾中风景(22): var 变量与赋值操作符 scala 雾中风景(23): Nothing 类型引发的 NullPointerException scala 雾中风景(24): break 与异常捕获 scala 雾中风景(25): try-finally 表达式的类型推导 scala 雾中风景(26): 变量查找的问题 诊断 scala 的诊断方法(1) 使用-Xprint:typer 看语法糖的背后 scala 的诊断方法(2) 在 repl 下用 reify 查看表达式的翻译结果 scala 的诊断方法(3) 在 repl 下统计方法的执行时间 scala 的诊断方法(4) -Ytyper-debug 编译项 scala 的诊断方法(5) 用 scalac-aspects 诊断 scalac 各阶段耗时 函数与函数式风格 无参方法与小括号问题 scala 中的无参方法与统一访问原则 scala 中的 eta-conversion 闭包变量绑定问题 如何写一段符合 scala 语言习惯的快速排序 Any.##方法与 hashCode 的区别 scala 中的有名参数 map 函数,隐式参数 CanBuildFrom 的细节 scala 中函数类型的多态 scala 不是函数式语言,与 Ocaml 的对比 foldLeft 与 foldRight 再谈 eta-conversion 与 eta-expansion 柯里化(currying)与构造器(Builder)模式 集合相关 对 tuple 进行迭代 String 当作集合处理时的方法 scala 中集合的交集、并集、差集 Tuple1 的存在意义? 为什么 scala 中的 tuple 定义了 22 个(Tuple22)? 二元组箭头表达式背后的语法糖 通过 List.apply 方法构造 List 的背后逻辑 API pitfalls scala 类库中的 api 陷阱(1): LinkedList.append REPL 相关 repl 杂记 repl 下的几种模式 repl 下的 javap scala2.11 的 repl 下增加了 kind 命令 Scala 2.10+ scala2.10 中 eval 一段 script scala2.10.1 的 repl 下:cp 命令不能工作 scala2.10 中采纳了 SIP-18:模块化语言特性 scala2.10 里的 for 表达式已经不允许对变量声明 val scala2.11 编译环节的一些变动: delambdafy scala2.11 编译器对 lint 的增强 未分类 lazy 变量与双重检测锁(DCL) scala 里的静态代理(static-forwarders) 统计诗经中最常使用的叠词 scala2.9 中@serializable 注释已不鼓励使用 import root.xxx 中的_root_前缀表示 xxx 包名是绝对路径 scala 中执行外部命令(scala.sys.process) classloader 问题:import my.package._ 是否会 load 该包下所有的 class? scala 中有 Unicode 的关键字 Any 类的源码在哪儿? scala 编译器的一个 bug scala bug 系列:2.10 编译器把单例当作类型的 bug scala 里模拟 javascript/python 里的生成器的效果 null 造型为值类型时为何不抛异常 Int 与 Integer 的拆箱问题 Scala 函数式编程中文版已上架 scalastyle 工具 分享与交流 分享 ppt: scala 中的函数与闭包 与 19 楼的交流 上海 scala 爱好者聚会(2013) 阿里技术嘉年华 2013 2013 华东 scala 爱好者聚会(杭州) 华东地区 scala 爱好者聚会(2014 上海) 华东地区 scala 爱好者聚会(2015 上海) Scala 在挖财的应用实践 ArchSummit 北京 2015 小记 依赖注入 Cake Pattern 与依赖注入 scala 中的 self type(自身类型)与依赖注入
Sometimes we need to parse strings like this: "1234567890","James",man,"New York, NY, USA" And the output we need is as follows: "1234567890" "James" man "New York, NY, USA" We can try the following code:
前几天 JDK 10 正式发布了,距离上一次 JDK 9 发布才没几周时间,但是 JDK 10 还是更新了许多新特性。 下面介绍一下几个比较重要的新特性。
当我们下载了一部电视剧或是动漫时,通常文件名非常长,会包含视频的分辨率、字幕组等信息,但是我们通常只会关心这是第几集。。。
N 皇后问题 首先介绍八皇后问题。八皇后问题是一个以国际象棋为背景的问题:如何能够在 8×8 的国际象棋棋盘上放置八个皇后,使得任何一个皇后都无法直接吃掉其他的皇后? 为了达到此目的,任两个皇后都不能处于同一条横行、纵行或斜线上。
之前写项目的时候需要通过 Java API 实现 Consumer 每次都从最开始消费,也就是将 Kafka topic 下所有 partition 的 offset 重置到最初位置。
有时候我们需要通过 Gradle 将依赖打包进 Jar 包中,下面代码中的 fatJar 任务可以实现此功能。