Algorithm
如何写出正确的程序
- 明确变量的意义 (边界的定义,初始变量的定义)
- 循环不变量
- 小数据量模拟
- 大数据量测试
数组算法题解题技巧
- 如果没有思路就用暴力解法,再想优化
- 三路快排partition思路
- 对撞指针
- 双索引滑动窗口
相关LeetCode
- 283 MoveZeroes
- 27 RemoveElement
- 26 Remove Duplicates from Sorted Array
- 80 Remove Duplicates from Sorted Array II
- 75
- 88
- 215
- 167
- 125
- 345
- 11
- 209
- 3
- 438
- 76
Review
Tips/Technology
一、maven源码插件和打包方式
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-source-plugin</artifactId>
<version>3.0.0</version>
<!-- 绑定source插件到Maven的生命周期,并在生命周期后执行绑定的source的goal -->
<executions>
<execution>
<!-- 绑定source插件到Maven的生命周期 -->
<phase>compile</phase>
<!--在生命周期后执行绑定的source插件的goals -->
<goals>
<goal>jar-no-fork</goal>
</goals>
</execution>
</executions>
</plugin>
执行 mvn install,maven会自动将source install到repository 。
执行 mvn deploy,maven会自动将source deploy到remote-repository 。
执行 mvn source:jar,单独打包源码。
注意:在多项目构建中,将source-plugin置于顶层或parent的pom中并不会发挥作用,必须置于具体项目的pom中。
二、kafka 7大版本
- 0.7:最古老的版本,应该已经没人使用,只提供最基础的消息队列功能。
- 0.8:添加了副本机制,提供了高可靠解决方案。老版本的客户端API(指定zk而非broker地址)。
- 0.9:添加了权限和安全功能,java重写Consumer API,新的Producer API也比较稳定。
- 0.10:添加了Kafka Streams功能,使得kafka不光是一个消息队列,也是流处理工具。修复了新版本Consumer API bug。
- 0.11:添加幂等性 Producer API 和事务,对KAfka消息格式重构。
- 1.0: 主要是对Kafka Streams的各种改进。
- 2.0: 主要是对Kafka Streams的各种改进。
三、kafka 部署在Windows和 Linux的区别
- I/O模型的使用:在Linux上的实现机制是epoll,而在Windows平台上的实现机制是select。
- 数据网络传输效率:Linux部署Kafka能够享受到零拷贝技术所带来的快速数据传输特性。
- 社区支持度: 遇到问题Linux会有更好的社区反馈。
四、kerberos学习地址
https://blog.csdn.net/hk2000c/article/details/633091
http://blog.sina.com.cn/s/blog_84feb25101015but.html
https://blog.csdn.net/wang_zhou_jian/article/details/5461302
https://www.cnblogs.com/xxoome/p/7423922.html
https://blog.csdn.net/m0_37962779/article/details/78414619
Share
《长期收益》 - 摘抄自阮一峰每周分享第六十二期
如果一件事情需要15年才能看到结果,此前完全没有回报,你还会去做吗?
互联网公司都采用敏捷开发,每个迭代大约是2周~6周。比三个迭代更遥远的事情,大家一般都不会去想。但是,人生是一个长期准备的过程,20岁的时候就需要定下35岁的目标,然后苦苦积累,不计得失,只为了无比遥远的多年以后,能够看到成果。互联网是一个短期行为的行业,但是人生不是。
Research
flink 任务发布