What to learn?
To develop sub-competencies, reach mastery levels, and respond to the problem situations posed in this course, it is necessary to learn different concepts, theories, procedures, techniques, attitudes and values, among other contents.
- Data Abstraction
- Complexity Analysis
- Sorting Algorithms
- Search Algorithms
- Linear Data Structures
Nonlinear Data Structures:
- Network (Graphs)
- Set (Hashing Techniques)
- Identify the main elements of the problem.
- Abstract elements in order to design the structures that best represent the problem.
- Apply complexity analysis in the search for an optimal solution.
- Select, based on the characteristics of the problem, the most suitable data structure and/or algorithm.
- Codifies solutions in high-level programming languages.
- Develops the algorithms that best adapt to the selected structure.
- Uses programmable devices in the solution process.
- Analyze and proves mathematically the different behaviors of computational algorithms for the different data structures.
- Develops efficient solutions to real situations using different data structures and algorithms.
- Appreciates the need for a systematic analysis of a problematic situation in order to adequately identify the factors that give rise to the observed deviations.
- Assumes responsibility for the decisions made to solve problems, aware that it must be based on research and engineering methodologies and tools.
- It’s aware of the need for a systematic exploration of possible solutions to identify the best options.
- It values the need to perform efficient computational processes, understanding the difference in the execution times of each type of process.
- It’s aware of the importance of using efficient algorithms and data structures to everyday problems.
- Accepts responsibility for the correct use of computational processes in situations that support everyday situations.