(strs: string[])
| 118 | // ----- Helpers for common prefix/suffix on literal arms ----- |
| 119 | // 公共前后缀 |
| 120 | function lcp(strs: string[]): string { |
| 121 | if (strs.length === 0) return ""; |
| 122 | let p = strs[0]; |
| 123 | for (const s of strs.slice(1)) { |
| 124 | let k = 0; |
| 125 | const m = Math.min(p.length, s.length); |
| 126 | while (k < m && p[k] === s[k]) k++; |
| 127 | p = p.slice(0, k); |
| 128 | if (!p) break; |
| 129 | } |
| 130 | return p; |
| 131 | } |
| 132 | function lcs(strs: string[]): string { |
| 133 | if (strs.length === 0) return ""; |
| 134 | const rev = strs.map((s) => [...s].reverse().join("")); |
no test coverage detected