How to resolve the algorithm Find common directory path step by step in the Factor programming language
Published on 12 May 2024 09:40 PM
How to resolve the algorithm Find common directory path step by step in the Factor programming language
Table of Contents
Problem Statement
Create a routine that, given a set of strings representing directory paths and a single character directory separator, will return a string representing that part of the directory tree that is common to all the directories. Test your routine using the forward slash '/' character as the directory separator and the following three strings as input paths: Note: The resultant path should be the valid directory '/home/user1/tmp' and not the longest common string '/home/user1/tmp/cove'. If your language has a routine that performs this function (even if it does not have a changeable separator character), then mention it as part of the task.
Let's start with the solution:
Step by Step solution about How to resolve the algorithm Find common directory path step by step in the Factor programming language
Source code in the factor programming language
: take-shorter ( seq1 seq2 -- shorter )
[ shorter? ] 2keep ? ;
: common-head ( seq1 seq2 -- head )
2dup mismatch [ nip head ] [ take-shorter ] if* ;
: common-prefix-1 ( file1 file2 separator -- prefix )
[ common-head ] dip '[ _ = not ] trim-tail ;
: common-prefix ( seq separator -- prefix )
[ ] swap '[ _ common-prefix-1 ] map-reduce ;
You may also check:How to resolve the algorithm Caesar cipher step by step in the Modula-3 programming language
You may also check:How to resolve the algorithm Hello world/Standard error step by step in the Perl programming language
You may also check:How to resolve the algorithm Rate counter step by step in the Ring programming language
You may also check:How to resolve the algorithm Sudoku step by step in the PL/I programming language
You may also check:How to resolve the algorithm Tokenize a string with escaping step by step in the Simula programming language