拿下技术面上传简历

现场实现一个函数 parse_duration(s) -> int,把形如 "1h30m"、"90s"、"2h" 的时长字符串解析成总秒数,单位只支持 h/m/s。要求你分两步做:第一步先用一句话写清这个函数接受的「合法输入」到底是什么(契约),并列出你会覆盖的边界输入清单;第二步再写代码。

代码能力与调试排障现场编码1-3 年知识点 1 个

面试官在考什么

判断候选人是不是先定契约再写代码,以及他脑子里有没有一张成体系的输入分类表,而不是只把题面上的样例跑通。

边界处理

回答框架 · 前两步

  1. 先明确契约:合法 = 一个或多个「非负整数 + 单位」,单位 ∈ {h, m, s},大小写不敏感,允许首尾空白;不合法的定义要一次性说完,不能只举 happy path。
  2. 边界清单至少覆盖:空串 / None、纯数字无单位、未知单位("1d")、重复单位、0 值("0s")、超长数值("999999999h")、负号、小数("1.5h")、只含空格、中文或全角字符。

还有 3 条答案要点、 3 层追问、 5 个常见坑, 以及针对你简历的追问路径,在定制报告里。

上传简历,生成我的题库先看示例报告

同一能力域的其他题