mirror of
https://github.com/aljazceru/crawler_v2.git
synced 2025-12-17 07:24:21 +01:00
removed unused function
This commit is contained in:
@@ -9,7 +9,6 @@ import (
|
|||||||
"github/pippellia-btc/crawler/pkg/graph"
|
"github/pippellia-btc/crawler/pkg/graph"
|
||||||
"github/pippellia-btc/crawler/pkg/walks"
|
"github/pippellia-btc/crawler/pkg/walks"
|
||||||
"math/rand/v2"
|
"math/rand/v2"
|
||||||
"slices"
|
|
||||||
)
|
)
|
||||||
|
|
||||||
var ErrEmptyWalkStore = errors.New("the walk store is empty")
|
var ErrEmptyWalkStore = errors.New("the walk store is empty")
|
||||||
@@ -251,28 +250,6 @@ func frequencyMap(path []graph.ID) map[graph.ID]float64 {
|
|||||||
return freqs
|
return freqs
|
||||||
}
|
}
|
||||||
|
|
||||||
// targetFrequency returns the frequency of visits for each target
|
|
||||||
func targetFrequency(targets []graph.ID, path []graph.ID) []float64 {
|
|
||||||
if len(targets) == 0 || len(path) == 0 {
|
|
||||||
return nil
|
|
||||||
}
|
|
||||||
|
|
||||||
total := len(path)
|
|
||||||
freq := 1.0 / float64(total)
|
|
||||||
freqs := make([]float64, len(targets))
|
|
||||||
|
|
||||||
for _, node := range path {
|
|
||||||
idx := slices.Index(targets, node)
|
|
||||||
if idx == -1 {
|
|
||||||
continue
|
|
||||||
}
|
|
||||||
|
|
||||||
freqs[idx] += freq
|
|
||||||
}
|
|
||||||
|
|
||||||
return freqs
|
|
||||||
}
|
|
||||||
|
|
||||||
// returns a random element of a slice. It panics if the slice is empty or nil.
|
// returns a random element of a slice. It panics if the slice is empty or nil.
|
||||||
func randomElement[S []E, E any](s S) E {
|
func randomElement[S []E, E any](s S) E {
|
||||||
return s[rand.IntN(len(s))]
|
return s[rand.IntN(len(s))]
|
||||||
|
|||||||
@@ -57,29 +57,6 @@ func BenchmarkFrequencyMap(b *testing.B) {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
func BenchmarkTargetFrequency(b *testing.B) {
|
|
||||||
targets := make([]graph.ID, 10)
|
|
||||||
for i := range 10 {
|
|
||||||
targets[i] = randomID(1000)
|
|
||||||
}
|
|
||||||
|
|
||||||
sizes := []int{10000, 100000, 1000000}
|
|
||||||
for _, size := range sizes {
|
|
||||||
b.Run(fmt.Sprintf("size=%d", size), func(b *testing.B) {
|
|
||||||
|
|
||||||
path := make([]graph.ID, size)
|
|
||||||
for i := range sizes {
|
|
||||||
path[i] = randomID(size / 10)
|
|
||||||
}
|
|
||||||
|
|
||||||
b.ResetTimer()
|
|
||||||
for range b.N {
|
|
||||||
targetFrequency(targets, path)
|
|
||||||
}
|
|
||||||
})
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
func randomID(n int) graph.ID {
|
func randomID(n int) graph.ID {
|
||||||
return graph.ID(strconv.Itoa(rand.IntN(n)))
|
return graph.ID(strconv.Itoa(rand.IntN(n)))
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user