Algoritmu ta' Tfittxija Dinamika (Dynamic Search) f'C++- Spjegazzjoni, Eżempju u Kodiċi

L-algoritmu ta' tfittxija dinamika, magħruf ukoll bħala l-algoritmu ta' "tfittxija kif tip inti", huwa komunement użat biex jimplimenta karatteristiċi bħall-awtokompletazzjoni fil-vireg tat-tiftix. Dan l-algoritmu jipprovdi suġġerimenti f'ħin reali bbażati fuq id-dħul tal-utent u d-dejta disponibbli.

Kif taħdem

  1. Ibda b'sett tad-dejta li jkun fih lista ta' oġġetti(eż., kliem, ismijiet jew prodotti).
  2. Hekk kif l-utent ittajpja kull karattru, aġġorna l-mistoqsija tat-tfittxija.
  3. Iffiltra s-sett tad-dejta bbażat fuq it-tfittxija attwali.
  4. Uri r-riżultati ffiltrati lill-utent f'ħin reali.

Eżempju

Ikkunsidra dataset ta' lingwi ta' programmar: ["C", "C++", " Java ", " Python ", " JavaScript ", " Ruby ", " Swift "].

  1. Utenti tipi "C". Riżultati ffiltrati: ["C", "C++"].
  2. Utenti tipi "C++". Riżultati ffiltrati: ["C++"].
  3. Tipi ta' utenti " Java ". Riżultati ffiltrati: [" Java ", " JavaScript "].
  4. Tipi ta' utenti "Py". Riżultati ffiltrati: [" Python "].
  5. Utenti tipi "Jav". Riżultati ffiltrati: [" Java ", " JavaScript "].

Eżempju Kodiċi f'C++

#include <iostream>  
#include <vector>  
#include <string>  
  
std::vector<std::string> dynamicSearch(const std::vector<std::string>& dataset, const std::string& query) {  
    std::vector<std::string> results;  
  
    for(const std::string& item: dataset) {  
        if(item.find(query) != std::string::npos) {  
            results.push_back(item);  
        }  
    }  
  
    return results;  
}  
  
int main() {  
    std::vector<std::string> programmingLanguages = {"C", "C++", "Java", "Python", "JavaScript", "Ruby", "Swift"};  
    std::string userQuery = "Jav";  
  
    std::vector<std::string> suggestions = dynamicSearch(programmingLanguages, userQuery);  
  
    std::cout << "Suggestions for query '" << userQuery << "': ";  
    for(const std::string& suggestion: suggestions) {  
        std::cout << suggestion << ";  
    }  
    std::cout << std::endl;  
  
    return 0;  
}  

F'dan l-eżempju, il- dynamicSearch funzjoni tieħu dataset ta' lingwi ta' programmar u mistoqsija tal-utent bħala inputs. Jirritorna suġġerimenti bbażati fuq il-mistoqsija attwali. Hekk kif l-utent ittajpja l-karattri, l-algoritmu jiffiltra s-sett tad-dejta u juri suġġerimenti f'ħin reali.

Nota: L-implimentazzjoni attwali ta 'tfittxija dinamika tista' tkun aktar kumplessa, li tinvolvi tekniki bħal trie structures jew indiċjar effiċjenti għal datasets kbar.