wns ! tengo k hacer un programa donde me diga si tiene algun numero reptido el array y si tiene algun nuemero repetido hacer otro nuevo aleatoriamente.
aber si me podeis exar una mano con el programilla k es para una practica de programacion y me he kdado piyado.
gracias dde ante mano.
sl2
usa la clase Random para el numero aleatorio, pero busca algo de codigo de lo contrario no te ayudaran, y ve buscando en google,
Ando de buenas :xD usalo asi _rvr(array,0, 1);
public static void _rvr(int array[],int firstIndex,int secondIndex){
if(!(secondIndex==array.length)){
if(array[firstIndex]==array[secondIndex])array[secondIndex]=(int) Math.floor(Math.random()*10);
secondIndex++;
_rvr(array,firstIndex,secondIndex);
}else {
firstIndex++;
if(firstIndex==array.length-1)return;
_rvr(array,firstIndex,firstIndex+1);
}
}
wns!!! gracia x las respuesta pero lo tengo k hacer con bucles for para sacar si algun repetido y es lo k me raya k no me sale :S aber si sabeis como deberia poner los for y cuantos.
gracias de antemano :D
Sl2 :)
Espero que te sirva.
int i;
String sCadena;
String sF_Cadena = "";
String [] sArrVar;
sCadena = "1,2,3,4,5,3,2,5,7,8,9";
sArrVar = sCadena.split(",");
for (i=0; i<sArrVar.length; i++)
{
if (sF_Cadena.indexOf(sArrVar[i])==-1)
{
sF_Cadena = sF_Cadena + sArrVar[i];
}
}
System.out.println(sF_Cadena);
Saludos!
Cita de: Fakedo0r en 8 Enero 2012, 02:36 AM
Espero que te sirva.
int i;
String sCadena;
String sF_Cadena = "";
String [] sArrVar;
sCadena = "1,2,3,4,5,3,2,5,7,8,9";
sArrVar = sCadena.split(",");
for (i=0; i<sArrVar.length; i++)
{
if (sF_Cadena.indexOf(sArrVar[i])==-1)
{
sF_Cadena = sF_Cadena + sArrVar[i];
}
}
System.out.println(sF_Cadena);
Saludos!
Esto no es muy eficiente, deberias ordenarlos primero, y despues checar si algun numero sucesor o posterior al otro esta reptido. Eso se hace mucho mas rapido.
Cita de: [Case] en 8 Enero 2012, 23:17 PM
Esto no es muy eficiente, deberias ordenarlos primero, y despues checar si algun numero sucesor o posterior al otro esta reptido. Eso se hace mucho mas rapido.
Para que ordenar si simplemente compruebo si hay algun duplicado sea sucesor o posterior a otro numero? Logicamente se puede hacer mejor codigo, esto solo fue un ejemplo sencillo sobre la peticion del usuario. :P Seria genial que pusieras un ejemplo asi veriamos lo eficiente. ;)
Saludos.
Cita de: Fakedo0r en 9 Enero 2012, 00:45 AM
Para que ordenar si simplemente compruebo si hay algun duplicado sea sucesor o posterior a otro numero? Logicamente se puede hacer mejor codigo, esto solo fue un ejemplo sencillo sobre la peticion del usuario. :P Seria genial que pusieras un ejemplo asi veriamos lo eficiente. ;)
Saludos.
Es eficiente por que la complejidad del algoritmo de ordenacion es O(nlogn) mas checar si alguno se repitio, que no toma O(n), por lo que la complejidad es O(nlogn + n)
Mientras que verificando si alguno se repitió nos toma O(n^2).