This course explains data structures and how they relate to algorithm design and programming. Data structures are the ways information is organized inside a program so that it is easy to store and access. The course starts with an introduction, then the relationship between data structures and algorithm design, and the types of data structures: basic and non-basic, linear and non-linear. After that you learn how to represent expressions in infix, prefix and postfix forms and how to use a stack to convert from infix to postfix, then static and dynamic data structures in two parts.
- Master the fundamental concepts of data structures.
- Implement algorithms using various data structures.
- Understand how to optimize program performance using appropriate data structures.
This course teaches the analysis and design of algorithms and how to think logically to solve programming problems. It starts with a general introduction and the concept of algorithm analysis and its strategies, then how to write verbal algorithms and flowcharts. Next you analyze the Sequential Search algorithm and get to know Asymptotic Notation, which covers Big O, Omega and Theta, and you analyze loops and nested loops. Then you move on to recursive algorithms and compare them with iteration, graph algorithms such as BFS and DFS, and the insertion sort, quick sort and binary search algorithms.
- Deep understanding of algorithm analysis concepts.
- Writing efficient algorithms and analyzing their performance.
- Handling graphs and advanced algorithms.
The Clean Code course explains how to write code that is organized and easy to read and change. It starts by introducing the idea of clean and bad code, then horizontal spacing and vertical spacing, and the PEP guidelines for writing code in Python. After that it covers consecutive numeric suffixes, duplicated code and what it signals and how to get rid of it, magic numbers, the idea of dead code, and debugging with log files. Then it moves to comments and documentation, the twenty guiding principles, and writing effective functions, and it ends with downloading the workbook.
- Understand how to write clean and professional code.
- Commit to global programming standards and improve code quality.
- Eliminate errors resulting from duplicated or unorganized code.
This course teaches programming with Excel VBA: writing Visual Basic for Applications code to automate calculations and repeated tasks inside Excel with one click. You start with the introduction and course outline, then break the ice and write your first program, learn events and controls in VBA, and get to know controls and their properties. Next you learn Excel objects and conditional statements, variables and message box programming, adding controls to worksheets, and how VBA works with Excel cells. Then you move to the idea of algorithms and building a plan for writing code, loops, a program that picks the best supplier, and macros, with the work file and exercises to download.
- Automate processes within Excel using VBA.
- Create custom software solutions to meet business needs.
- Enhance productivity by writing code and executing algorithms.
This course teaches discrete mathematics, the math you need to master programming and computer science, with a focus on mathematical logic. It starts with an introduction to discrete mathematics and logic. Then you learn what propositions are and how to operate on them, followed by the one-way conditional and the two-way conditional. Next you move on to truth tables and how to read them, the idea of logical equivalence, statements that are always true or never true, and the laws of logical equivalence. It ends with worked examples and the idea of the propositional function.
- Master the fundamental concepts of mathematical logic and their practical applications.
- Ability to use truth tables to analyze programming propositions.
- Understand and apply logical laws in code development.