ARTS 打卡 第 17 周
ARTS 简介
Algorithm 是一道算法题,Review 是读一篇英文文章,Technique/Tips 是分享一个小技术,Share 是分享一个观点。
Algorithm
给定 n 个非负整数表示每个宽度为 1 的柱子的高度图,计算按此排列的柱子,下雨之后能接多少雨水。
图片可以去 leecode 官网查看
上面是由数组 [0,1,0,2,1,0,1,3,2,1,2,1] 表示的高度图,在这种情况下,可以接 6 个单位的雨水(蓝色部分表示雨水)。 感谢 Marcos 贡献此图。
解题思路:
第一次看到这道题的时候,感觉和11 盛最多水的容器很像,可以考虑使用双指针求解。
使用双指针既可以分别从左到右与从右到左,也可以两个指针以不同的速度行进。对于本题,可以考虑以不同的速度行走。
先找到数组中的最高点,这样就可以将其分为两部分,分别处理
使用两个指针 a,b,让 a 先走,左半部分中,如果 height[a]<height[b],则可以装水,让 a 继续走
否则他们之间没有容器,则令 a=b
走到最高处结束
右边也一样。
ps:参考资料《剑指Offer:名企面试官精讲典型编程题(第2版)》
Review
学习-微服务架构模式系列,网站地址是:https://microservices.io
微服务架构-Pattern: Service Component Test
这篇文章的主要介绍了微服务架构下如何进行测试:服务组件测试
问题:使用微服务架构,会有很多服务,必然存在一个调用可能涉及多个微服务,那么如何测试
强制条件:端到端的测试(即启动多个服务的测试)是困难的、缓慢的、脆弱的和昂贵的。
解决方法,服务组件测试,使用测试代理测试其他服务
好处:
更容易
更快
更可靠的
更便宜的
不足
可能出现通过测试但生产失败
需要解决 如何保证测试代理能够正确的模拟服务行为
ps:《微服务架构设计模式》
Tips
记录我对于 Linux 的学习,备份压缩相关的命令:
ps:”~” 表示为 home 目录,”.” 则是表示目前所在的目录,”..” 则表示当前目录的上一层目录
-h 用人类可读的格式展示(G(千兆字节),M(兆字节),K(千字节)),大部分命令有这个参数
备份命令
tar 命令用于备份文件,本身不做压缩
格式:tar <操作参数> [选项] 文件或者目录
操作参数是指要做的动作,必选至少有一个,有:
[-]A –catenate –concatenate 将一存档与已有的存档合并
[-]c –create 创建一个新的存档
1.[-]d –diff –compare 比较存档与相应的未存档文件的不同之处
[-]r –append 将文件附加到存档结尾
[-]t –list 列出存档中文件的目录
[-]u –update 仅将较新的文件附加到存档中
[-]x –extract –get 从存档提取文件
–delete 把指定文件从存档中删除(不要用于磁带!)
常用选项:
-t 显示压缩文件的内容
-z 支持 gzip 解压文件
-j 支持 bzip2 解压文件
-Z 支持 compress 解压文件
-v 显示操作过程
-l 文件系统边界设置
-k 保留原有文件不覆盖
-m 保留文件不被覆盖
-W 确认压缩文件的正确性
-f 指定压缩文件
Share
分享最近对的学习,这次分享的是SpringBoot系列(1)-初识SpringBoot,可能会有不足之处,之后会根据理解继续修改。
版权声明: 本文为 InfoQ 作者【引花眠】的原创文章。
原文链接:【http://xie.infoq.cn/article/4cedfe94e53a3e5d9d5c6b7b9】。
本文遵守【CC-BY 4.0】协议,转载请保留原文出处及本版权声明。
评论