A method for selectively controlling lengths of nanowires in a substantially non-uniform array of nanowires includes establishing at least two different catalyzing nanoparticles on a substrate. A nanowire from each of the at least two different catalyzing nanoparticles is substantially simultaneously grown. At least one of the nanowires has a length different from that of at least another of the nanowires.