Come si scrive un'implementazione funcitonal per split(positions:List[Int], str:String):List[String]
, che è simile a splitAt
ma divide una data stringa in un lista di stringhe da un determinato elenco di posizioni ?Come dividere una stringa data una lista di posizioni a Scala
Per esempio
split(List(1, 2), "abc")
rendimentiList("a", "b", "c")
split(List(1), "abc")
restituisceList("a", "bc")
split(List(), "abc")
rendimentiList("abc")
userei una soluzione basata su 'sottostringa 'invece di' splitAt'. Il primo riutilizza la stringa 'originale' in memoria, mentre il secondo copia le stringhe in nuove stringhe. Le soluzioni fornite possono essere adattate per utilizzare la 'sottostringa'. –