crossoverKPoint

fun <T> crossoverKPoint(value1: Array<T>, value2: Array<T>, count: Int, random: Random)
fun crossoverKPoint(value1: BooleanArray, value2: BooleanArray, count: Int, random: Random)
fun crossoverKPoint(value1: ByteArray, value2: ByteArray, count: Int, random: Random)
fun crossoverKPoint(value1: CharArray, value2: CharArray, count: Int, random: Random)
fun crossoverKPoint(value1: DoubleArray, value2: DoubleArray, count: Int, random: Random)
fun crossoverKPoint(value1: FloatArray, value2: FloatArray, count: Int, random: Random)
fun crossoverKPoint(value1: IntArray, value2: IntArray, count: Int, random: Random)
fun crossoverKPoint(value1: LongArray, value2: LongArray, count: Int, random: Random)
fun <T> crossoverKPoint(value1: MutableList<T>, value2: MutableList<T>, count: Int, random: Random)
fun crossoverKPoint(value1: ShortArray, value2: ShortArray, count: Int, random: Random)

Executes a K point crossover on the input sequence individuals. The two values are modified in place.

Example:

Count (K points) = 2
Parent 1: ++++++++
Parent 2: --------
Generated cross index: 1, 5
Child 1: ++----++
Child 2: --++++--

Parameters

value1

value of first child chromosome

value2

value of second child chromosome

count

k-points for crossover