Skip to content

Proyecto de estructura de datos, se usan grafos, listas enlazadas, tablas hash, etc.

Notifications You must be signed in to change notification settings

Diego0119/search-simulator

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Search Simulator 💻🔍

Este repositorio contiene el desarrollo de un simulador de búsqueda de archivos utilizando estructuras de datos avanzadas para la recuperación de información.

👨‍💻 Desarrollado por:

1. Diego Sanhueza 🙋‍♂️

  • Estudiante de Ingeniería Infomatica
  • Diego Sanhueza
  • Se encargará de realizar la estructura de los grafos que se usarán.

2. Miguel Loaiza 👨‍💻

  • Estudiante de Ingeniería Informatica
  • Miguel Loaiza
  • Se encargará de implementar el algoritmo PageRank.

3. Felipe Carcamo 🙋

  • Estudiante de Ingeniería Informatica
  • Felipe Carcamo
  • Se encargará de implementar el Indice Invertido.

4. Miguel Maripillan 🤔

  • Estudiante de Ingeniería Informatica
  • Miguel Maripillan
  • Se encargará de implementar los grafos que se utilizarán.

Objetivo 🎯

El objetivo de este proyecto es implementar un sistema avanzado de recuperación de información, integrando dos técnicas clave en el manejo de datos estructurados: el índice invertido y el algoritmo PageRank. Con este proyecto, buscamos comprender en profundidad los mecanismos de los motores de búsqueda modernos.

Descripción del Proyecto 🤔

Este simulador de búsqueda simplificado indexará un conjunto de documentos web que contienen enlaces entre ellos, simulando hipervínculos. El proyecto se divide en dos componentes principales:

  1. Índice Invertido: Implementación de un índice invertido para realizar búsquedas rápidas de palabras clave en los documentos.
  2. PageRank: Uso de un grafo para modelar las relaciones entre documentos mediante enlaces. Se implementará el algoritmo de PageRank para calcular la importancia de cada documento en la web, y se mostrarán los resultados en orden de relevancia.

Funcionalidades ⚙️

1. Carga de Documentos 📑

  • Los documentos estarán en archivos de texto plano y contendrán enlaces a otros documentos, representados como link: docN.
  • El sistema procesará estos documentos para extraer palabras clave y construir el grafo de enlaces.

2. Construcción del Índice Invertido 📝

  • Cada palabra relevante en el documento (excluyendo "stopwords" comunes) se añadirá al índice invertido con su ID de documento.
  • Al realizar una consulta, el sistema devolverá los documentos que contienen la palabra clave.

3. Construcción del Grafo y Cálculo de PageRank 🕸️

  • El sistema construirá un grafo dirigido donde cada documento es un nodo, y cada enlace entre documentos es una arista.
  • Implementación del algoritmo de PageRank para calcular la importancia de cada documento, considerando enlaces entrantes y salientes.

4. Búsqueda y Ordenación de Resultados 🔍

  • Al realizar una búsqueda, los documentos que contienen la palabra clave serán recuperados del índice invertido.
  • Los resultados estarán ordenados de acuerdo con el puntaje de PageRank, mostrando primero los documentos más relevantes.

Requisitos del Proyecto 📝

  • Estructuras de Datos:
    • Implementación del índice invertido usando listas enlazadas o tablas hash.
    • Representación del grafo mediante listas de adyacencia.
  • Algoritmos:
    • Implementación del algoritmo de PageRank en iteraciones, usando un factor de amortiguación (damping factor).
    • Algoritmos de búsqueda eficientes en el índice invertido.
  • Resultados:
    • El sistema mostrará una lista de documentos ordenados por relevancia para una palabra o frase dada.

Documentación 📚

Si deseas más información sobre la ejecución del proyecto o los detalles técnicos, revisa el archivo README.MD que esta en docs/README.MD.

About

Proyecto de estructura de datos, se usan grafos, listas enlazadas, tablas hash, etc.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 4

  •  
  •  
  •  
  •