Ver Mensaje Individual
  #3 (permalink)  
Antiguo 06/12/2012, 13:09
vosk
 
Fecha de Ingreso: agosto-2012
Mensajes: 601
Antigüedad: 11 años, 8 meses
Puntos: 83
Respuesta: array de strings sin repetir

No se si será mas rapido y eficiente pero puedes tokenizar por espacios, en cada vuelta sacas una palabra, la comparas con la lista y si está incrementas el contador, y si no está pues la añades.

Para tokenizar con strtok es muy facil pero necesitas usar una copia del c_str de la frase (o si piensas usar esta funcion en multithreads tendras que usar strtok_r que es la verison reentrante que no guarda datos sino que te los retorna ya preparados para la siguiente vuelta); la otra opcion es usar istringstream con getline indicandole que quieres leer hasta los espacios. No he probado la segunda forma pero debería de funcionar.

Saludos
vosk