elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Guía actualizada para evitar que un ransomware ataque tu empresa


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación C/C++ (Moderadores: Eternal Idol, Littlehorse, K-YreX)
| | |-+  tengo una una pequeña duda, sobre vectores
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: tengo una una pequeña duda, sobre vectores  (Leído 3,952 veces)
Emily

Desconectado Desconectado

Mensajes: 18


Ver Perfil
tengo una una pequeña duda, sobre vectores
« en: 18 Enero 2022, 10:22 am »

En c tengo un vector de N numero y lo que me gustaría saber es de que manera puedo saber cuales numero se repiten, no cuantas veces se repiten un numero.
por ejemplo
Entrada
25624925
Salida
los números que se repiten son 2, el 2 y 5

No pido que me den el código por que se que no es un foro donde te resuelven tares por solo quiero una pequeña orientación de como poder hacerlo.
se los agradecería mucho si me ayudan.


« Última modificación: 18 Enero 2022, 10:30 am por Emily » En línea

MAFUS


Desconectado Desconectado

Mensajes: 1.603



Ver Perfil
Re: tengo una una pequeña duda, sobre vectores
« Respuesta #1 en: 18 Enero 2022, 14:02 pm »

¿Es un vector? Dos opciones rápidas:
1. Ordénalo y ya puedes contar las veces que se repiten sin gastar mucha memoria.
2. Un array de 10 booleanos cada uno para un número. El número del vector lo usas cómo índice de tu array e incrementas esa posición. Al terminar recorre el array para ver qué posiciones son mayores de 1.


En línea

K-YreX
Moderador
***
Desconectado Desconectado

Mensajes: 1.008



Ver Perfil
Re: tengo una una pequeña duda, sobre vectores
« Respuesta #2 en: 19 Enero 2022, 19:23 pm »

Las soluciones de @Mafus son buenas opciones  ;-)

Personalmente, me gusta más la segunda opción pero con un pequeño detalle: cada elemento del array tiene que ser de un único dígito.
Por lo que está opción es más limitada, mientras que la primera funciona con números de cualquier longitud.
En línea

Código
  1. cout << "Todos tenemos un defecto, un error en nuestro código" << endl;
MAFUS


Desconectado Desconectado

Mensajes: 1.603



Ver Perfil
Re: tengo una una pequeña duda, sobre vectores
« Respuesta #3 en: 19 Enero 2022, 21:23 pm »

Atendiendo que su entrada es un único número de n dígitos la segunda solución le vale.
En línea

K-YreX
Moderador
***
Desconectado Desconectado

Mensajes: 1.008



Ver Perfil
Re: tengo una una pequeña duda, sobre vectores
« Respuesta #4 en: 19 Enero 2022, 22:12 pm »

Desde luego. Sólo quería recalcar esa limitación.

Y aprovecho ya para extender un pelín más la explicación y decir que no es que esa solución sólo valga para números de un dígito. Lo correcto es decir que sólo vale para números de un dígito si el array de contadores/booleanos es de longitud = 10.
Como forma general para que funcione con cualquier tamaño de números: La longitud del array debe ser 10 elevado al número máximo de dígitos que pueda tener cualquiera de los elementos.
Código:
longitud_array = pow(10, num_max_digitos)
Lo cual se hace inviable para números con muchos dígitos pero con un par de dígitos seguiría siendo una buena opción.
En línea

Código
  1. cout << "Todos tenemos un defecto, un error en nuestro código" << endl;
Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
Pequeña duda sobre WMI
Programación Visual Basic
ŞCØRPIØN-X3 2 2,296 Último mensaje 13 Mayo 2011, 04:58 am
por ŞCØRPIØN-X3
Tengo una pequeña duda...
Hacking Wireless
Anshii 0 1,793 Último mensaje 17 Septiembre 2012, 03:18 am
por Anshii
Pequeña duda sobre GCC
Programación C/C++
snake_linux 3 2,186 Último mensaje 3 Septiembre 2015, 12:23 pm
por snake_linux
Duda sobre vectores!
Programación C/C++
Sr_Malweriks 5 2,193 Último mensaje 4 Enero 2016, 23:11 pm
por Sr_Malweriks
Tengo una duda sobre los punteros, trabajar con archivos, arrays y vectores. En c+++
Programación C/C++
DarkSun812 9 6,605 Último mensaje 23 Marzo 2022, 20:31 pm
por RayR
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines