У нас есть карта пар строк, таких как name: location (unix как абсолютное местоположение a la myfolder/
). Нам дают с некоторым местоположением а-ля myfolder/mysubfolder/myfile
. Как определить, какая из карт больше всего подходит под данный URL?
Например, у нас есть карта типа:
service1:myfolder/
service2:myfolder/mysubfolder/
service3:myfolder/myothersubfolder/
service4:myfolder/mysubfolder/myfile
Нам дано значение myfolder/mysubfolder/myfile/blablabla/
(строка).
Мы хотим выяснить, к какому пункту на нашей карте это относится больше всего.
Результат поиска должен быть service4
как элемент карты с наиболее связанным содержанием.
Так как найти по заданному строковому значению, к какому элементу карты он относится больше всего?
Пожалуйста, предоставьте немного кода, потому что я C ++ nube и не понимаю, как дополнить такую вещь?
Итак, я немного упростил задачу - теперь все, что мне нужно, это то, насколько глубоко задан путь , который в строковом случае можно определить, просто итерируя по всем путям карт, просматривая длину, ища появление на заданном пути и запоминание самого длинного пути элемента карты, найденного на заданном пути.