考虑以下数组:
/www/htdocs/1/sites/lib/abcdedd
/www/htdocs/1/sites/conf/xyz
/www/htdocs/1/sites/conf/abc/def
/www/htdocs/1/sites/htdocs/xyz
/www/htdocs/1/sites/lib2/abcdedd
什么是检测公共(public)基本路径的最短,最优雅的方法-在这种情况下
/www/htdocs/1/sites/
并将其从数组中的所有元素中删除?
lib/abcdedd
conf/xyz
conf/abc/def
htdocs/xyz
lib2/abcdedd
最佳答案
编写一个函数longest_common_prefix
,它接受两个字符串作为输入。然后以任何顺序将其应用于字符串,以将其简化为它们的公共(public)前缀。由于它是关联和可交换的,因此顺序与结果无关紧要。
这与其他二进制运算(例如加法或最大公约数)相同。