Please note, this is not a homework solution site. We are more than happy to provide help, but the purpose of programming assignments is to get practice.
Basically, you need to place the characters in string 2 into random places in string 1. Can you think of a series of steps that would accomplish that?
Suppose you had two rows of blocks in front of you and you wanted to interleave them. How would you do that?
A lot of the practice is coming up with the series of steps.
Yup yup. All you need for this one is string concatenation. Also you don't need an iterator. You can literally do for loops and access strings at whatever character indices you want to add "Mary".