Return a measure of the sequences' similarity (float in [0,1]). Where T is the total number of elements in both sequences, and M is the number of matches, this is 2.0*M / T. Note that this is 1 if the sequences are identical, and 0 if they have nothing in common. .Ratio() is expensive to compute i
()
| 466 | // want to try .QuickRatio() or .RealQuickRation() first to get an |
| 467 | // upper bound. |
| 468 | func (m *SequenceMatcher) Ratio() float64 { |
| 469 | matches := 0 |
| 470 | for _, m := range m.GetMatchingBlocks() { |
| 471 | matches += m.Size |
| 472 | } |
| 473 | return calculateRatio(matches, len(m.a)+len(m.b)) |
| 474 | } |
| 475 | |
| 476 | // Return an upper bound on ratio() relatively quickly. |
| 477 | // |