For your first question: You're getting the wiring error because your input array has no defined type. You have an empty array on the front panel. In other words, you just have an array container. You need to put something in the array. Select a numeric control from the palette and drop it onto the array container.
For your second question: In general LabVIEW will re-use memory buffers wherever possible. With a replace array you are, by definition, replacing the array. If you're using the input array for some other operation LabVIEW will determine whether it needs to make a copy of the input array.
For your last question: You can leave the index input unwired as that gets autoincremented when you expand the function, but you cannot leave the value input unwired. What would it replace it with? If you only need to replace specific indices, just specify those indices.
General comment: I would suggest reading up on array in the LabVIEW manual and going through the tutorial that comes with LabVIEW.