Buenas tardes mentes pensantes,
Les describo lo que deseo conseguir (tiene que ver con los cruzamientos prueba de Mendel, a alguno os sonará):
Tengo(después de un proceso anterior) un string de tamaño variable entre 2 y 20 caracteres. Necesito obtener todas las combinaciones posibles de dichos caracteres SIN alterar su posición (vienen ordenados) según si el carácter viene "repetido" o no (mayúscula y minúscula).
Como yo me explico malamente, que mejor que poner unos ejemplos:
EJEMPLO 1
------------------
cadena: 'AaBCcD'
Las combinaciones posibles serían: ABCD, ABcD, aBCD y aBcD.
EJEMPLO 2
------------------
cadena: 'ABcCdDEFf'
Las combinaciones posibles serían: ABCDEF, ABCDEf, ABCdEF, ABCdEf, ABcDEF, ABcDEf, ABcdEF y ABcdEf.
Dichas combinaciones me gustaría tenerlas guardadas en memoria ya que, además de mostrarlas por pantalla, también las necesitaría para posteriores cálculos. Por cierto, lo estoy haciendo en C.
Muchas gracias por su ayuda y su tiempo de antemano.
Un saludo
Les describo lo que deseo conseguir (tiene que ver con los cruzamientos prueba de Mendel, a alguno os sonará):
Tengo(después de un proceso anterior) un string de tamaño variable entre 2 y 20 caracteres. Necesito obtener todas las combinaciones posibles de dichos caracteres SIN alterar su posición (vienen ordenados) según si el carácter viene "repetido" o no (mayúscula y minúscula).
Como yo me explico malamente, que mejor que poner unos ejemplos:
EJEMPLO 1
------------------
cadena: 'AaBCcD'
Las combinaciones posibles serían: ABCD, ABcD, aBCD y aBcD.
EJEMPLO 2
------------------
cadena: 'ABcCdDEFf'
Las combinaciones posibles serían: ABCDEF, ABCDEf, ABCdEF, ABCdEf, ABcDEF, ABcDEf, ABcdEF y ABcdEf.
Dichas combinaciones me gustaría tenerlas guardadas en memoria ya que, además de mostrarlas por pantalla, también las necesitaría para posteriores cálculos. Por cierto, lo estoy haciendo en C.
Muchas gracias por su ayuda y su tiempo de antemano.
Un saludo