/algorithms-and-data-structure-IF672

This repository serves as a personal collection for the IF672 Algorithms and Data Structures course at CIn-UFPE. It contains various categories of content related to the course.

Primary LanguageC

🧠 Algorithms and Data Structure Repository - IF672

This repository serves as a personal collection for the IF672 Algorithms and Data Structures course at CIn-UFPE. It contains various categories of content related to the course.

📂 Repository Structure

  • PureAlgos: Implementation of pure algorithms.

  • APs (Practical Activities): Direct assignments from the Google Classroom.

  • EPs (Exercise Practices): Exercises based on the Practical Activities in Portuguese, with solutions.

  • MindMaps: Visual representations in the form of mind maps, derived from the course textbooks.

  • LE (Exercises Lists): Lists created on Vjudge. Each list has a dedicated folder with solutions and a PDF containing the questions.

  • EE (School Exercise): Materials related to school exercises, including exam-related content.

📚 Course Syllabus

  • Analysis of Algorithms

    • Fundamentals
    • Asymptotic Complexity
  • Basic Data Structures

    • Static and Dynamic Arrays
    • Linked Lists
    • Queues and Stacks
  • Search and Sorting in Linear Data Structures

    • Linear and Binary Search
    • Mergesort
    • Quicksort
  • Hash Tables

  • Trees

    • Binary Search Trees
    • AVL Trees
  • Heaps and Heapsort

  • Structures for Equivalence Relations

  • Graphs

    • Depth-First and Breadth-First Search
    • Shortest Paths (Dijkstra, Bellman-Ford, Floyd-Warshall)
    • Minimum Spanning Trees (Prim, Kruskal)
  • Computability and Computational Complexity

  • Heuristics for Intractable Problems

    • Backtracking
    • Branch & Bound
    • Dynamic Programming

Feel free to explore the folders and contents. Contributions are welcome!

🚀 How to Contribute

If you'd like to contribute, simply fork this repository, make the desired changes in your copy, and then submit a pull request. Your contributions will be reviewed and merged into the main repository if accepted.

If you encounter any issues or have questions, feel free to open an issue in this repository or contact me on Instagram.