이 문제에서는 문자열을 의미있는 단어로 분할해야합니다. 단어가 존재하는지 여부를 확인하는 사전이 제공됩니다.동적 프로그래밍을 사용하여 문자열을 단어로 분할
나는 " How to split a string into words. Ex: "stringintowords" -> "String Into Words"?에서 여기에 몇 가지 다른 방법을 본 적이.
나는 다른 방법을 생각하고 일을하거나하지 않을 경우 궁금 해서요.
예 -를
itlookslikeasentence 알고리즘
문자열의 각 문자는 DAG의 노드에 해당합니다.
부울 배열 초기화 t 거짓.
각 노드마다 선택 사항이 있습니다. 이전 하위 배열에 현재 문자를 추가 한 후에도 유효한 단어가 생성되면 추가하고, 그렇지 않으면 추가하지 않고 해당 문자에서 새 단어를 시작하고 bool [ previous_node] = 단어가 거기에서 끝났음을 나타내는 참. 위의 예제에서 bool [1]은 true로 설정됩니다.
이것은 최대 서브 어레이 합계 문제와 유사합니다.
이 알고리즘이 작동합니까?
하위 문자열 또는 하위 시퀀스? – shole