Born to be proud
7/27
2017

QR 码解析算法

检测定位符流程

  • 横向扫描,检测 黑白黑白黑 的组合
  • 默认隔(3 * maxI) / (4 * MAX_MODULES)行扫描一次,TRY_HARDER开启后逐行扫描
  • 验证是否满足1:1:3:1:1的比例
  • 检测纵向是否满足定位符特征
  • 如果已经确定了两个定位符,则可跳过 (Math.abs(firstConfirmedCenter.getX() - center.getX())-Math.abs(firstConfirmedCenter.getY() - center.getY())) / 2; 行,继续扫描
  • 如果提前确定3个定位符,且模块大小相近,则停止扫描 haveMultiplyConfirmedCenters()
  • 否则继续扫描图片
  • 筛选掉和其他相差较大的定位符,选择匹配最好的3个定位符
  • 确定三个定位符的中心坐标和各自位置 orderBestPatterns()
  • 返回检测到的三个定位符的结果

7/19
2017

机试题

给夏令营学生出的机试题,虽然很简单,但要写出复杂度较低的方法并不容易。

相对排名

给定 N 个运动员的分数,计算他们的相对排名和得分最高的三个人,他们将分别获得奖项:”Gold Medal”, “Silver Medal” 和 “Bronze Medal”.

例子:

Input: [5, 4, 3, 2, 1]
Output: ["Gold Medal", "Silver Medal", "Bronze Medal", "4", "5"]

Explanation: 
前三个是得分最高的三个人,他们分别获得"Gold Medal", "Silver Medal" 和 "Bronze Medal".
剩下的两名运动员,你只需根据他们的分数输出他们的相对排名.

5/27
2017

Data Matrix 解析算法

Data Matrix

Data Matrix 是二维码的一种编码格式,原名Data code,由美国国际资料公司(International Data Matrix, 简称ID Matrix)于1989年发明。

Data Matrix二维条码的外观是一个由许多小方格所组成的正方形或长方形符号,以二位元码(Binary-code)方式来编码。深色代表“1”,浅色代表“0”。

定位图形是资料区域的一个周界,为一个模组宽度。其中两条邻边为暗实线,主要用于限定物理尺寸;定位和符号失真。另两条邻边由交替的深色和浅色模组组成,主要用于限定符号的单元结构,但也能帮助确定物理尺寸及失真。

datamatrix