ext/hnswlib/src/bruteforce.h in hnswlib-0.1.1 vs ext/hnswlib/src/bruteforce.h in hnswlib-0.2.0

- old
+ new

@@ -6,10 +6,11 @@ namespace hnswlib { template<typename dist_t> class BruteforceSearch : public AlgorithmInterface<dist_t> { public: + BruteforceSearch() : data_(nullptr) { } BruteforceSearch(SpaceInterface <dist_t> *s) { } BruteforceSearch(SpaceInterface<dist_t> *s, const std::string &location) { loadIndex(location, s); @@ -89,16 +90,16 @@ std::priority_queue<std::pair<dist_t, labeltype >> searchKnn(const void *query_data, size_t k) const { std::priority_queue<std::pair<dist_t, labeltype >> topResults; if (cur_element_count == 0) return topResults; - for (int i = 0; i < k; i++) { + for (size_t i = 0; i < k; i++) { dist_t dist = fstdistfunc_(query_data, data_ + size_per_element_ * i, dist_func_param_); topResults.push(std::pair<dist_t, labeltype>(dist, *((labeltype *) (data_ + size_per_element_ * i + data_size_)))); } dist_t lastdist = topResults.top().first; - for (int i = k; i < cur_element_count; i++) { + for (size_t i = k; i < cur_element_count; i++) { dist_t dist = fstdistfunc_(query_data, data_ + size_per_element_ * i, dist_func_param_); if (dist <= lastdist) { topResults.push(std::pair<dist_t, labeltype>(dist, *((labeltype *) (data_ + size_per_element_ * i + data_size_)))); if (topResults.size() > k)