(a: number[], b: number[])
| 314 | } |
| 315 | |
| 316 | function cosine(a: number[], b: number[]): number { |
| 317 | let dot = 0, normA = 0, normB = 0; |
| 318 | for (let i = 0; i < a.length; i++) { |
| 319 | dot += a[i] * b[i]; |
| 320 | normA += a[i] * a[i]; |
| 321 | normB += b[i] * b[i]; |
| 322 | } |
| 323 | const denom = Math.sqrt(normA) * Math.sqrt(normB); |
| 324 | return denom === 0 ? 0 : dot / denom; |
| 325 | } |
| 326 | |
| 327 | function splitCamelCase(text: string): string[] { |
| 328 | return text |