డైనమిక్ సెర్చ్ అల్గోరిథం, "సెర్చ్-యాజ్-యు-టైప్" అల్గోరిథం అని కూడా పిలుస్తారు, సాధారణంగా సెర్చ్ బార్లలో ఆటోకంప్లీట్ వంటి ఫీచర్లను అమలు చేయడానికి ఉపయోగిస్తారు. ఈ అల్గారిథమ్ వినియోగదారు ఇన్పుట్ మరియు అందుబాటులో ఉన్న డేటా ఆధారంగా నిజ-సమయ సూచనలను అందిస్తుంది.
అది ఎలా పని చేస్తుంది
- అంశాల జాబితా(ఉదా, పదాలు, పేర్లు లేదా ఉత్పత్తులు) ఉన్న డేటాసెట్తో ప్రారంభించండి.
- వినియోగదారు ప్రతి అక్షరాన్ని టైప్ చేస్తున్నప్పుడు, శోధన ప్రశ్నను నవీకరించండి.
- ప్రస్తుత శోధన ప్రశ్న ఆధారంగా డేటాసెట్ను ఫిల్టర్ చేయండి.
- ఫిల్టర్ చేసిన ఫలితాలను వినియోగదారుకు నిజ సమయంలో ప్రదర్శించండి.
ఉదాహరణ
ప్రోగ్రామింగ్ భాషల డేటాసెట్ను పరిగణించండి: ["C", "C++", " Java, " Python ", " JavaScript ", " Ruby ", " Swift "].
- వినియోగదారు రకాలు "సి". ఫిల్టర్ చేసిన ఫలితాలు: ["C", "C++"].
- వినియోగదారు రకాలు "C++". ఫిల్టర్ చేసిన ఫలితాలు: ["C++"].
- వినియోగదారు రకాలు " Java ". ఫిల్టర్ చేసిన ఫలితాలు: [" Java ", " JavaScript "].
- వినియోగదారు రకాలు "Py". ఫిల్టర్ చేసిన ఫలితాలు: [" Python "].
- వినియోగదారు రకాలు "జావ్". ఫిల్టర్ చేసిన ఫలితాలు: [" Java ", " JavaScript "].
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;
}
ఈ ఉదాహరణలో, dynamicSearch
ఫంక్షన్ ప్రోగ్రామింగ్ భాషల డేటాసెట్ను మరియు వినియోగదారు ప్రశ్నను ఇన్పుట్లుగా తీసుకుంటుంది. ఇది ప్రస్తుత ప్రశ్న ఆధారంగా సూచనలను అందిస్తుంది. వినియోగదారు అక్షరాలను టైప్ చేస్తున్నప్పుడు, అల్గోరిథం డేటాసెట్ను ఫిల్టర్ చేస్తుంది మరియు నిజ-సమయ సూచనలను ప్రదర్శిస్తుంది.
గమనిక: డైనమిక్ శోధన యొక్క వాస్తవ అమలు మరింత సంక్లిష్టంగా ఉంటుంది, ఇందులో ట్రై స్ట్రక్చర్లు లేదా పెద్ద డేటాసెట్ల కోసం సమర్థవంతమైన ఇండెక్సింగ్ వంటి సాంకేతికతలు ఉంటాయి.