ProgrammingLower Secondary · Upper Secondary · University · General PublicData Structures and Algorithms with Python for Beginners in Uganda
Computer Programming
Lower Secondary · Upper Secondary · University · General Public

Data Structures and Algorithms with Python for Beginners in Uganda

Data Structures and Algorithms with Python for Beginners in Uganda

Duration

4 weeks

Investment

UGX 450,000

Teaching

Live online

Program Introduction

Data Structures and Algorithms are the foundation of effective software development. They help programmers organise data, solve problems efficiently and create applications that continue performing as the amount of information grows.

This beginner Data Structures and Algorithms with Python course introduces these essential computer science skills through clear explanations, visual examples, coding exercises and practical African use cases. Learners will study arrays, lists, stacks, queues, linked lists, searching, sorting and hash tables while developing confidence in Python programming.

The course is designed for learners in Uganda, East Africa and across Africa who want to strengthen their programming foundation, prepare for software-development studies, improve their coding interview skills or progress towards web development, mobile application development, data science and artificial intelligence.

Examples are connected to familiar challenges such as organising school records, managing shop inventory, processing transaction data and handling customer or clinic queues.

Key Features & Benefits

• Beginner-friendly explanations of Data Structures and Algorithms. • Practical implementation using Python. • Visual tracing of algorithms and data structures. • Ugandan and African project scenarios. • Guided coding exercises after every major concept. • Algorithm-efficiency comparisons using Big-O notation. • Debugging, testing and clean-code practice. • Coding interview preparation exercises. • Portfolio-ready capstone project. • Suitable for students, graduates, professionals and independent learners. • Uses free and widely available development tools. • Builds a foundation for software engineering, data science and AI learning pathways.

Real-World Applications

• Learners can apply the skills from this course to: • Develop faster web and mobile applications. • Organise learner, customer, product or transaction records. • Build inventory systems for shops and agribusinesses. • Implement customer-service and clinic waiting queues. • Search and sort information efficiently. • Process synthetic mobile-money-style transaction records. • Prepare for university computer science and software engineering courses. • Solve beginner coding interview questions. • Participate in entry-level programming challenges. • Strengthen their foundation for Python, web development, mobile development, data science and machine learning. • Create software solutions for schools, SMEs, health services and community organisations in Africa.

Course outline and learning expectations

This is a tutor-led course. The outline shows what your tutor will cover; teaching materials and examinations are provided directly to enrolled students.

Data Structures and AlgorithmsDSA Course UgandaPython Programming UgandaBeginner Coding CourseAlgorithms for BeginnersComputer Science FundamentalsCoding Classes KampalaOnline Programming Course AfricaSoftware Development East AfricaPython Data StructuresCoding Interview PreparationProgramming for StudentsEllipkom ProgrammingLearn Python UgandaAfrican Software Developers
Teaching format

Live online

Teaching language

English (Uganda)

Course difficulty

Beginner

Intended learners

Lower Secondary · Upper Secondary · University · General Public

What you will learn

  • After completing this beginner Data Structures and Algorithms with Python course, learners will be able to:
  • Explain algorithms, data structures and abstract data types using clear examples.
  • Break programming problems into logical, step-by-step solutions.
  • Use Big-O notation to describe basic differences in algorithm efficiency.
  • Store and process data using Python lists, tuples, dictionaries and sets.
  • Implement arrays, stacks, queues and linked lists.
  • Apply linear search and binary search to suitable datasets.
  • Implement and compare common sorting algorithms.
  • Use hash tables for efficient storage, lookup and retrieval.
  • Select an appropriate beginner-level data structure for a practical software problem.
  • Test, debug and improve Python algorithms.
  • Solve entry-level coding interview and programming challenge questions.
  • Build a practical Python project based on a Ugandan or African digital-service scenario.

Modules

  1. 1

    Introduction to Algorithms and Computational Thinking

    Meaning of an algorithm.Characteristics of a good algorithm.Inputs, processing and outputs.Writing algorithms with plain language, pseudocode and flowcharts.Breaking large problems into smaller steps.Correctness, readability and efficiency.Python programming fundamentals refresher.Practical task: Design an algorithm for processing learner results.
  2. 2

    Understanding Algorithm Efficiency and Big-O

    Why software performance matters.Running time and memory usage.Introduction to time and space complexity.Constant, linear, logarithmic and quadratic complexity.Best-case, average-case and worst-case behaviour.Counting operations in simple Python programs.Comparing alternative solutions.Practical task: Compare two methods for searching customer records.
  3. 3

    Arrays, Python Lists and Strings

    How sequential data is stored.Creating and accessing Python lists.Traversing, inserting, updating and deleting elements.One-dimensional and two-dimensional data.Working with strings as sequences.Common array and string problem-solving patterns.Frequency counting and duplicate detection.Practical task: Build a simple school-book or shop-inventory tracker.
  4. 4

    Stacks, Queues and Deques

    Last-In, First-Out stack operations.First-In, First-Out queue operations.Push, pop, enqueue, dequeue and peek.Implementing stacks using Python lists.Implementing efficient queues using collections.deque.Expression checking and undo operations.Queue applications in customer service and healthcare.Practical task: Create a clinic or service-centre waiting-line simulator.
  5. 5

    Linked Lists

    Limitations of fixed sequential structures.Nodes, values and links.Singly linked lists.Traversing a linked list.Inserting and deleting nodes.Searching and updating linked-list data.Comparing linked lists with Python lists.Introduction to doubly linked lists.Practical task: Build a simple music, lesson or announcement playlist.
  6. 6

    Searching Algorithms

    Linear search.Binary search.Requirements for binary search.Iterative and recursive search approaches.Comparing search performance.Searching strings, numbers and object records.Handling missing and duplicate values.Practical task: Create a searchable directory of products, districts or learners.
  7. 7

    Sorting Algorithms

    Why data sorting is important.Bubble sort.Selection sort.Insertion sort.Introduction to merge sort.Ascending, descending and multi-field sorting.Stability and in-place sorting.Comparing algorithm efficiency.Practical task: Rank products, examination results or transaction records.
  8. 8

    Hash Tables, Dictionaries and Practical Problem Solving

    Key-value data organisation.Python dictionaries as hash-table implementations.Hash functions and collisions.Sets and membership testing.Frequency maps.Fast lookup and duplicate removal.Choosing between lists, sets and dictionaries.Testing and debugging algorithm implementations.Build a Python data-processing application for inventory, learner records or synthetic mobile-money-style transactions.

Before you enroll

  • Learners should have:
  • Basic computer literacy, including opening files, using a browser and typing simple commands.
  • A basic understanding of variables, conditions, loops and functions in Python or another programming language.
  • An interest in coding, logical thinking and solving practical problems.
  • No previous knowledge of Data Structures and Algorithms.
  • Access to a laptop or desktop computer capable of running Python.

What you need

  • A Windows, macOS or Linux laptop or desktop computer.
  • Python 3.
  • Visual Studio Code with the Python extension, or an equivalent Python code editor.
  • A modern web browser such as Chrome, Firefox, Edge or Safari.
  • Git for basic version control.
  • A GitHub account for storing practice projects and building a programming portfolio.
  • A notebook and pen for tracing algorithms and drawing data structures.
  • Internet access for Ellipkom lessons, exercises and project resources.

Frequently asked questions

More in Computer Programming

Introduction to Object-Oriented Programming Concepts
Lower Secondary

Introduction to Object-Oriented Programming Concepts

4 weeksUGX 450,000
Advanced Rust Systems Programming Course in Uganda & Africa
Lower Secondary · Upper Secondary · University · General Public

Advanced Rust Systems Programming Course in Uganda & Africa

4 weeksUGX 450,000
Intermediate Dart Programming in Uganda & East Africa
Lower Secondary · Upper Secondary · University · General Public

Intermediate Dart Programming in Uganda & East Africa

4 weeksUGX 450,000
Intermediate Rust Programming Course in East Africa: Traits, Lifetimes & Concurrency
Lower Secondary · Upper Secondary · University · General Public

Intermediate Rust Programming Course in East Africa: Traits, Lifetimes & Concurrency

4 weeksUGX 450,000
Advanced PHP Programming – Professional Course in Uganda
Upper Secondary · University · General Public

Advanced PHP Programming – Professional Course in Uganda

4 weeksUGX 500,000
Computer Fundamentals for Lower Secondary Learners
Lower Secondary

Computer Fundamentals for Lower Secondary Learners

4 weeksUGX 450,000

More for Lower Secondary · Upper Secondary · University · General Public

 Dart Programming for Beginners in Uganda & East Africa
Lower Secondary · Upper Secondary · University · General Public

Dart Programming for Beginners in Uganda & East Africa

4 weeksUGX 450,000
Advanced Dart Programming & Concurrency for Africa
Lower Secondary · Upper Secondary · University · General Public

Advanced Dart Programming & Concurrency for Africa

4 weeksUGX 500,000
Advanced iOS Engineering: Secure, Offline-First Apps for Africa
Lower Secondary · Upper Secondary · University · General Public

Advanced iOS Engineering: Secure, Offline-First Apps for Africa

4 weeksUGX 450,000
Advanced NumPy for High-Performance Data Science in Africa
Lower Secondary · Upper Secondary · University · General Public

Advanced NumPy for High-Performance Data Science in Africa

4 weeksUGX 450,000
Advanced Pandas Course for Scalable Data Pipelines in Africa
Lower Secondary · Upper Secondary · University · General Public

Advanced Pandas Course for Scalable Data Pipelines in Africa

4 weeksUGX 450,000
Advanced Python Programming Course in Africa
Lower Secondary · Upper Secondary · University · General Public

Advanced Python Programming Course in Africa

4 weeksUGX 500,000

Quick Actions

Enroll Now

Need Help?

Have questions about this program? Our team is here to help!