டைனமிக் தேடல் அல்காரிதம், "தேடல்-உங்கள்-வகை" அல்காரிதம் என்றும் அழைக்கப்படுகிறது, இது பொதுவாக தேடல் பட்டிகளில் தானாக நிரப்புதல் போன்ற அம்சங்களைச் செயல்படுத்தப் பயன்படுகிறது. இந்த அல்காரிதம் பயனரின் உள்ளீடு மற்றும் கிடைக்கும் தரவின் அடிப்படையில் நிகழ்நேர பரிந்துரைகளை வழங்குகிறது.
எப்படி இது செயல்படுகிறது
- உருப்படிகளின் பட்டியலைக் கொண்ட தரவுத்தொகுப்புடன் தொடங்கவும்(எ.கா., சொற்கள், பெயர்கள் அல்லது தயாரிப்புகள்).
- பயனர் ஒவ்வொரு எழுத்தையும் தட்டச்சு செய்யும் போது, தேடல் வினவலைப் புதுப்பிக்கவும்.
- தற்போதைய தேடல் வினவலின் அடிப்படையில் தரவுத்தொகுப்பை வடிகட்டவும்.
- வடிகட்டப்பட்ட முடிவுகளை நிகழ்நேரத்தில் பயனருக்குக் காண்பி.
உதாரணமாக
நிரலாக்க மொழிகளின் தரவுத்தொகுப்பைக் கவனியுங்கள்: ["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
செயல்பாடு நிரலாக்க மொழிகளின் தரவுத்தொகுப்பையும் பயனர் வினவலையும் உள்ளீடுகளாக எடுத்துக்கொள்கிறது. தற்போதைய வினவலின் அடிப்படையில் இது பரிந்துரைகளை வழங்குகிறது. பயனர் எழுத்துகளை உள்ளிடும்போது, அல்காரிதம் தரவுத்தொகுப்பை வடிகட்டுகிறது மற்றும் நிகழ்நேர பரிந்துரைகளைக் காட்டுகிறது.
குறிப்பு: டைனமிக் தேடலின் உண்மையான செயலாக்கம் மிகவும் சிக்கலானதாக இருக்கலாம், இதில் ட்ரை கட்டமைப்புகள் அல்லது பெரிய தரவுத்தொகுப்புகளுக்கான திறமையான அட்டவணைப்படுத்தல் போன்ற நுட்பங்கள் அடங்கும்.