ARTS 打卡 第 8 周
ARTS 简介
Algorithm 是一道算法题,Review 是读一篇英文文章,Technique/Tips 是分享一个小技术,Share 是分享一个观点。
Algorithm k 个一组翻转链表
给你一个链表,每 k 个节点一组进行翻转,请你返回翻转后的链表。
k 是一个正整数,它的值小于或等于链表的长度。
如果节点总数不是 k 的整数倍,那么请将最后剩余的节点保持原有顺序。
示例:
给你这个链表:1->2->3->4->5
当 k = 2 时,应当返回: 2->1->4->3->5
当 k = 3 时,应当返回: 3->2->1->4->5
说明:
你的算法只能使用常数的额外空间。
你不能只是单纯的改变节点内部的值,而是需要实际进行节点交换。
解题思路:
这到题与上一题有些相似,但有不同,上一题是本题的特例,就是 k=2,所以解题思路可以参考,但是么词查找需要转换的节点的前一个节点有点费时,换一种思路
把链表分为 k 个元素一组的子链表,然后将这个子链表反转,然后再反转下一个子链表
需要注意的是,在翻转子链表时,要注意需要保存首节点与首节点的前一个节点,否则翻转之后不能链接
Review 微服务架构模式系列
学习-微服务架构模式系列,网站地址是:https://microservices.io
微服务架构-Pattern: Shared database
这篇文章的主要介绍了微服务架构下如何进行持久化:共享数据库
强制要求:
松耦合
某些业务跨多个服务
某些业务查询涉及的数据跨多个服务
某些查询需要聚合多个服务的数据
数据系统能够很容易复制和共享,以扩大规模
不同的服务有不同的数据存储要求
解决方法:
多个服务共享一个数据库,通过每个服务自由的访问其他服务涉及的表,使用本地事物保证一致性。
好处
使用本地事物保持一致性,实现简单
一个数据库操作比较简单
缺点
开发耦合 其他服务都要访问同一个表,改变表结构困难
运行耦合 一个服务可能影响其他服务的运行
每一个服务需要的数据库类型可能不一致
Tips Linux 中查看文件内容的方法
记录我对于 Linux 的学习,文件相关的命令:
ps:”~” 表示为 home 目录,”.” 则是表示目前所在的目录,”..” 则表示当前目录的上一层目录
-h 用人类可读的格式展示(G(千兆字节),M(兆字节),K(千字节)),大部分命令有这个参数
cat 最常用的方式是将文件一次性全部输出到标准输出,或者将几个文件合并为一个文件
cat [-AbeEnstTuv] [–help] [–version] fileName
more 与 cat 类似,不过是以分页的形式输出,按空格可以向前,按 b 可以退后,
格式:more [-dlfpcsu] [-num] [+/pattern] [+linenum] [fileNames..]
常用参数:
-num 一次显示的行数
+num 从第 num 行开始显示
-s 当遇到有连续两行以上的空白行,就代换为一行的空白行
less 与 more 类似,但使用 less 可以随意浏览文件,可以使用方向键控制方向,而且 less 在查看之前不会加载整个文件。
格式:less [options] filename
常用参数:
-e 当文件显示结束后,自动离开
-f 强迫打开特殊文件,例如外围设备代号、目录和二进制文件
-i 忽略搜索时的大小写
-m 显示类似 more 命令的百分比
-N 显示每行的行号
-s 显示连续空行为一行
ps: more 与 less 的不同
less 提供了更丰富的控制方式,比如可以按键盘上下方向键显示上下内容,more 不能通过上下方向键控制显示
less 不必读整个文件,加载速度会比 more 更快
less 退出后 shell 不会留下刚显示的内容,而 more 退出后会在 shell 上留下刚显示的内容
head 查看文件的开头部分的内容
格式:head [options] filename
常用参数:
-q 隐藏文件名
-v 显示文件名
-c<数目> 显示的字节数。
-n<行数> 显示的行数,默认为 10,即显示 10 行的内容
tail 查看文件的最后的内容,常用于查阅正在改变的日志文件
格式:tail [options] filename
-f 循环读取 常用于查阅正在改变的日志文件
-q 不显示处理信息
-v 显示详细的处理信息
-c<数目> 显示的字节数
-n<行数> 显示文件的尾部 n 行内容
Share
最近对 Java 虚拟机的探索使用 HSDB 查看 jvm 内存,可能会有不足之处,之后会根据理解继续修改。
版权声明: 本文为 InfoQ 作者【引花眠】的原创文章。
原文链接:【http://xie.infoq.cn/article/007be622e9978e36c1ebf3038】。
本文遵守【CC-BY 4.0】协议,转载请保留原文出处及本版权声明。
评论