L ⊆ ∑* is a regular language. Show that L^+ (aka kleene plus) is a regular language by describing how you can build a DFA or NFA for the language.
I would build a NFA. That NFA must have exactly one starting state and one end state, where the starting state is never the end state.
The amount of characters of the given language equals the amount of states of the NFA +1.
Every state except for the end state has an (outgoing) arrow to the next state where every single character of the language occurs exactly once (ordered aka one after the other).
If the language is made up of just one character, do: The end state has an outgoing arrow to itself with that one character of the language.
Else do: The end state has an outgoing arrow to the second state (I mean that state where the starting state points at) with the first character of the language.
Here is an example:
Given is language (aba)^+ where ^+ means exponent +
The NFA for this language would look like this ("Beispiel" means example):
Do you agree with my idea and do you have any improvements?
For the case the language is made up of several pairs, for example (aba, ab, bb)^+ I would just do the entire procedure for every single. In the end you will have a NFA for language (aba)^+ another NFA for (ab)^+ and NFA for (bb)^+. Then concatenate all NFA to one entire NFA.