introalg:taller07_5
Diferencias
Muestra las diferencias entre dos versiones de la página.
| Ambos lados, revisión anteriorRevisión previaPróxima revisión | Revisión previa | ||
| introalg:taller07_5 [2007/05/29 22:14] – elemento necesita Eq a => nicolasw | introalg:taller07_5 [2025/11/15 13:47] (actual) – editor externo 127.0.0.1 | ||
|---|---|---|---|
| Línea 169: | Línea 169: | ||
| listadoMuni = [(" | listadoMuni = [(" | ||
| </ | </ | ||
| + | |||
| ===== Manejando cosas más complejas ===== | ===== Manejando cosas más complejas ===== | ||
| Línea 190: | Línea 191: | ||
| < | < | ||
| -- extensión para poder leer archivos en Strings | -- extensión para poder leer archivos en Strings | ||
| - | import IOExts | + | import |
| -- constante principal con el grafo de la web. | -- constante principal con el grafo de la web. | ||
| Línea 198: | Línea 199: | ||
| -- carga un archivo en un String, usa IOExts | -- carga un archivo en un String, usa IOExts | ||
| leeArchivo :: String -> String | leeArchivo :: String -> String | ||
| - | leeArchivo nombre = unsafePerformIO$ readFile nombre | + | leeArchivo nombre = unsafePerformIO $ readFile nombre |
| -- transforma el contenido del archivo de String a lista de tuplas | -- transforma el contenido del archivo de String a lista de tuplas | ||
| Línea 206: | Línea 207: | ||
| where | where | ||
| fuente = takeWhile (not.esSeparador) xs | fuente = takeWhile (not.esSeparador) xs | ||
| - | todoMenosFuente = drop 1 (dropWhile (not.esSeparador) xs) | + | todoMenosFuente = dropWhile esSeparador |
| destino = takeWhile (not.esFinLinea) todoMenosFuente | destino = takeWhile (not.esFinLinea) todoMenosFuente | ||
| - | resto = drop 1 (dropWhile (not.esFinLinea) todoMenosFuente) | + | resto = dropWhile esFinLinea |
| esSeparador, | esSeparador, | ||
| - | esSeparador x = x=='|' | + | esSeparador x = elem x "| " |
| - | esFinLinea | + | esFinLinea |
| </ | </ | ||
| Línea 227: | Línea 228: | ||
| Main> take 32 (map fst webGraph) | Main> take 32 (map fst webGraph) | ||
| [" | [" | ||
| - | |||
| - | |||
| - | |||
| Línea 237: | Línea 235: | ||
| Vamos a desarrollar diferentes funciones para obtener información de esta lista. | Vamos a desarrollar diferentes funciones para obtener información de esta lista. | ||
| - | * Antes que nada necesitamos | + | * Determinar cuales y cuantas páginas se apuntan a si mismas. |
| + | * Para los siguientes puntos necesitaremos | ||
| * //primeros :: [(a,b)] -> [a]// y //segundos :: [(a,b)] -> [b]// que le toman la primera y segunda coordenada a cada elemento de la lista de pares. Sirve para obtener todas las urls fuente y destino respectivamente. Ayuda: con '' | * //primeros :: [(a,b)] -> [a]// y //segundos :: [(a,b)] -> [b]// que le toman la primera y segunda coordenada a cada elemento de la lista de pares. Sirve para obtener todas las urls fuente y destino respectivamente. Ayuda: con '' | ||
| * // | * // | ||
introalg/taller07_5.1180487696.txt.gz · Última modificación: (editor externo)
