A
选了一道困难题,两个有序数组得中位数

- 首先其实是不明白什么是中位数…
- 也不瞎解释了,看代码现在很清楚,大概就是如果样本是单数个,那其实就是最中间那个值,如果是偶数个,那么是最中间的两个数/2
- 但其实是瞄了一眼官方题解才明白大概其含义,当然也结合了维基百科
- 其次就是这个结果也太次了,超越5%得意思就是渣好么
- 然后就又瞄了一下2ms得一个答案,其实没有完全看懂,但是大概猜了一下,如果两个数组倾斜的时候,应该是不用还一个一个数到另一个队尾得
- 还有一个就是其实也不用实际赋值,只需要找出奇数时候得那个中位数,或者偶数时候那两个数在两个数组中的位置即可,这样内存应该也有节省
- 最后就是第一次提交还出错了,是自己的测试覆盖不够,num2得地方写成nums1没测出来
- 其实提交前仅就题目说明那两个case也调了有一阵子
至少这周早早把这个形式上完成了,上面发现的问题,完成ARTS形式再决定是当周补还是下周题,无论如何都是作弊啊,周拱一小卒,是不是太小了…
另外关于中位数,最好再看看这篇,因为有时候未必有原始数据,是分组频数,也有一套乱七八糟的方法算一下近似的中位数
R
继续找点乐子
先接前面把副歌断句部分列完整
I mal loutof salt
tears on running dry(这句挺正常啊)
Won(t) gi veyou wha tyou want Caus(e)I lookway too goo dtonight
这周没想到其他都完了,周三,第一次啊,虽然坐这个位子对面的大哥老震颤,好在我也可以震颤,并且貌似他也不经常在,还是方便啊,而且工作其实也没耽误,挺好
剩下的Salt得主副歌连读,晚上看看吧,哈哈,或者在那个app里面来做,做完了这里标记一下
second review?
概述,EclEmma和JaCoCo
- JaCoCo这东西不太像大路货(有多少人真正关心非常细致的测试技术?),所以扫一遍官方文档也有必要
- 也算卷帙浩繁了…
- JaCoCo,应该就是Java Code Coverage得意思
- jacoco.org这个网站其实是EclEmma得官网…和eclemma.org是一个东西
- jacoco.org官网首页后面就都是说EclEmma了,所以到此为止,转战JaCoCo真正的烘培鸡
JaCoCo index
- 首先是一句话概述:
- JaCoCo 是一个免费的java代码覆盖率工具,他是EclEmma团队在多年的集成已存在的库得知识得基础上构建出来的
- 然后是一个截图
- 截图是一个典型的JaCoCo测试覆盖率得报告,是JaCoCo自己的
- 有一些能猜出来,行数、方法数、类,以及分别有多少Missed了
- 比较靠前的两个还有柱状条得是Missed Instructions和Missed Branches,这两个都有一个覆盖比率
- 唯一一个猜不出来的是Cxty(其实Instructions是什么的东西也不知道)
- 后来看Cxty应该就是圈复杂度得意思
- 这个后面report之类的再看吧
- 这一部分大致是这样的,截个图吧
Snapshot Builds

Jacoco得master分支自动的构建和发布。由于采用的是测试驱动方法论,所以每个构建都认为是完整功能得。查看change history,可以看到最近的特性和bug修复情况。当前JaCoCo实现SonarQube代码品质指标可以在SonarCloud.io上看到
- 文档
- 下载地址(Maven仓库)
- 覆盖率报告
第一句就是吹了,后面写的也不能算不清楚,都是说的主干上的Snapshot得情况
- documentation就是EclEmma Overview里面给出得JaCoCo文档地址,后面详述
- Download是给了一个Snapshot包得下载地址,托管在oss.sonatype.org上;Maven Repository就是一些maven仓库的信息
- Coverage Report就是上面那个图
顺便到sonarqube.io上看了下价格,每10w行代码10欧,public得库还免费,这,还要啥自行车…
Release Builds
JaCoCo
我看到的是这样的,一屏显示还有点勉强
- 这个目录竟然叫trunk,可见是从老年间儿一路走来了
- 5个部分:概念,使用JaCoCo,集成JaCoCo,开发JaCoCo,杂项;一个一个概览一下目录
概念
看看这都怎么回事并且理解一下基本概念
- 任务
- 集成矩阵
- 代码覆盖率简介
- 覆盖率计算
这一段每一个点进去都挺有料得,奇怪的是斜体那个,没有还写那算怎么回事
这一段第一句估计是个习惯说法,what this is all about(参考是疑问句式,应该和what’ up,这里是陈述句式),其他没啥了,顺道发现一个stackoverflow(还是应该忍为stackoverflow是stackexchange得第一个子站?)得子站…
integration Matrix,点进去几个主要的组件、工具都有文档直通车
- 特别直达了idea得文档,毕竟现在用eclipse的不多了,写的还是挺详细的
- 要IDEA里看测试复杂度,就得点debug右边那个按钮,代码gutter红黄绿和Jacoco report应该一致;
- 红是就没走得
- 黄的一般就是条件分支判断那句,说明有的条件没走到(但这个存疑,有些例子还得仔细看)
- 绿的就是妥妥得走过了的
- mission和coverage counters概念居多,后面找机会重点再看下
- mission那篇可以当一个PRD看,还有功能性非功能性特性列表,非常好的一篇技术产品的产品定义书范例
使用JaCoCo
使用JaCoCo开箱即用的工具
- (讲的相关的Ant Tasks如何使用)
- (两个Ant得例子)
- (Maven插件的一个概要介绍)
- (两个使用Maven插件的例子)
- (Java Agent得使用介绍)
- (命令行工具得功能和参数介绍)
- (介绍一些Class Id得相关概念)
- (离线装配得介绍,相对于Java agent得 on-the-fly)
- (FAQ就是一些小白问题?)
- (Google Group和GitHub Issue地址,以及相关用途介绍)
这是最重要的一份文档索引列表
- Ant 和 Maven应该还是给单元测试场景用的,或者说是给构建前得单元测试框架执行这个场景来使用
- Java Agent应该可以使用在一些自动化的集成测试场景,例如我这惺惺念念得master分支合并前得代码准入测试…忽然想应该确保单元测试框架被执行,不应该跳过maven得test阶段
- 原来是觉得,如果强制要求,研发有可能倾向于跳过执行不过的测试,达不到代码准入的目的,所以还是想外部集成测试做提交验证,但是从鼓励写单元测试的角度似乎还是有意义得,并且作为一个代码人工审核的项,静态检查也有价值,想想,这个团队文化建设角度也有必要,既然在看了JaCoCo文档了,这篇还是很有帮助的
- 这个是后面要试用得
- 命令行工具配合Java Agent来使用吧,无论是操控,还是后面report得输出
- ClassId更多的应该是个JaCoCo得内部标识吧,可以进去看看,目前阶段不是太明白会有什么用,看它得生成规则是原始类文件的CRC64值?
- 离线装配有可能可以作为构建打包前得一步,避免又一个javaagent得参数,这个可能和一些公司的管控或者,其实我也说不清具体的场景,这块儿文档也没进去仔细看,这里说的都是猜的
- FAQ还是有点用得,翻到后面还真不是小白问题,遇到问题记得查一下吧
- 实在FAQ搞不定的,到这里来找
集成 JaCoCo
与你的工具集成 JaCoCo技术(,需要参考)
- (API 参考)
- (API使用得样例)
- (XML Report DTD定义)
- (各组件和Maven仓库得相关信息)
开发JaCoCo
这个暂时没什么直接用途,不过可以作为team顶层约束约定的参考,还是挺有用的
JaCoCo看起来还是运作得不错得一个开源工程,至少文档看起来是这样的,这个再Mission里面第一句里面可能就已经定了这个基调了,无论从哪方面,他得一个被关注的方面的就是well-formed documentation…
杂项
T

第一句话啥意思?
你可以安装Terminal 插件,然后在数据库插件中正确得使用终端?
没懂,按下面那个操作一个感受一下,事实证明,还是没搞明白;前半句看得还算理解
要安装一个插件,用Ctrl + Alt + S组合键打开Setttings,然后导航到Plugins。
后面就搞不懂了
在search field 中敲Terminal 然后按下 Ctrl+Alt+S
_
完全不知所云,为啥敲完了Terminal还要再按下打开settings用的快捷键?
这么混乱,要不再来个别的吧
second tip
intellij 里面,ctrl+D,复制行,这个曾经知道,后来老不用忘了,还是yyp得帅
third tip
最近用visual studio code比较多,其实也没多少,就是python训练营跟下来得用这个


