[perf] evaluateBonus can start from sidx - 1

This commit is contained in:
Junegunn Choi 2016-08-14 11:58:47 +09:00
parent d9c8a9a880
commit 41e916a511
No known key found for this signature in database
GPG Key ID: 254BC280FEF9C627
3 changed files with 6 additions and 9 deletions

View File

@ -55,7 +55,7 @@ func evaluateBonus(caseSensitive bool, text util.Chars, pattern []rune, sidx int
lenPattern := len(pattern)
consecutive := false
prevClass := charNonWord
for index := 0; index < eidx; index++ {
for index := util.Max(0, sidx-1); index < eidx; index++ {
char := text.Get(index)
var class charClass
if unicode.IsLower(char) {

View File

@ -10,14 +10,11 @@ import (
)
// Max returns the largest integer
func Max(first int, items ...int) int {
max := first
for _, item := range items {
if item > max {
max = item
}
func Max(first int, second int) int {
if first >= second {
return first
}
return max
return second
}
// Min returns the smallest integer

View File

@ -3,7 +3,7 @@ package util
import "testing"
func TestMax(t *testing.T) {
if Max(-2, 5, 1, 4, 3) != 5 {
if Max(-2, 5) != 5 {
t.Error("Invalid result")
}
}