BIG-O GREEN 2.0: INTRODUCTION TO PROBLEM SOLVING AND ALGORITHMS (AI-ASSISTED EDITION)

Introduction to Algorithmic Programming

Do you want to learn programming systematically from day one but feel overwhelmed by countless mediocre courses online? Have you tried self-teaching, only to find yourself writing code that “works” without truly understanding the underlying logic? Or perhaps you aspire to build a rock-solid foundation in Computer Science to excel in this challenging era of AI integration.

Big-O Green 2.0: Introduction to Problem Solving and Algorithms (AI-Assisted Edition) is your ideal starting point.

Unlike conventional “coding classes,” Green 2.0 is comprehensively redesigned to sharpen your Computational Thinking and Problem-Solving skills. Furthermore, you will be guided on how to leverage AI as an intelligent companion from your very first lines of code.

Every lesson goes beyond mere theory. You will gain a deep understanding of each concept and apply it to solve real-world problems, ensuring your solutions are 100% accurate on our rigorous, international-standard automated grading system.

The AI-Assisted Mindset:

  • AI as a Personal Tutor: Learn to use AI to explain complex code, generate revision quizzes, and systemize knowledge instead of just copying and pasting.
  • The Art of Debugging: Master essential “survival” skills—reading error messages, setting breakpoints, and tracing bugs like a professional.
  • Test Case Design: Cultivate critical thinking by building comprehensive test scenarios, including edge cases, before final submission.
  • Version Control (Git): Get acquainted with industry-standard workflows using Git commands: init, add, commit, push, and pull.
  • File Handling (File I/O): Gain practical data interaction skills by working with various file formats (.txt, .csv) beyond basic console input.
  • Career Guidance: Connect directly with experts for insights on choosing a major, crafting a CV, and mapping out your future career path.

Programming Languages: Choose from the three most popular languages: C++, Python, or Java. Observing and absorbing these languages simultaneously will help you grasp universal programming principles, giving you the confidence to master any other language in the future.

Tuition Fee: Special offer for the first 5 early registrants. For details of tuition fees, please see the attached link below.

We also have a program to support paying tuition fees many times for students. Please contact us via Email: admin@bigocoding.com for information.

You can view the opening time, class timetable and register via this link.

WHO IS THIS COURSE FOR?

  • Are you ready for Green 2.0?
  • Prerequisites: Zero starting point. You do NOT need any prior programming knowledge – only a personal computer and a committed learning mindset are required.
  • This course is designed for:
    – Absolute Beginners who want to start their journey the right way from day one.
    – University Students who have taken Intro to Programming but feel their foundation is fragmented.
    – High School Students looking to build a competitive edge before entering university.
    – Career Changers seeking a structured, in-depth roadmap instead of rote learning.
  • If you do not yet fit these criteria, please call us at 0937.401.483 for a consultation on our upcoming introductory paths.

COURSE ILLUSTRATION EXERCISES

  • The exercises are illustrated in Vietnamese, but there will be more lessons in English for students to familiarize themselves with the Algorithm exercises later.
  • The exercises are uploaded to Big-O’s grading system, students can do the test anywhere, anytime, and get grading results instantly.
  • The exercises are extracted from classic exercises in the programming courses of MIT, Stanford universities, etc.
  • The exercises are extracted from famous exams such as ACM-ICPCInformatics Olympiad (simple sentence format).

TIME AND LOCATION OF THIS COURSE

  • Duration: 2 months (8 weeks)
  • Class schedule: 2 classes a week, weekday evenings from 19:00 to 21:30(depending on the class schedule, there will be specific classes). 
  • Fomat: Online via Microsoft Teams.
  • Number of students per class: 25 to 30 students maximum.
  • Each class has 1 main teacher and teaching assistants.
  • Especially, there are weekly Office Hours for students to review the lesson if they can’t keep up with the lesson progress.

WHAT MAKES THE COURSES AT BIG-O CODING DIFFERENT

1. CURRICULUM & METHODOLOGY:

* Learning Approach: Core Understanding – Practical Excellence
  • Deep Learning: Focus on the “Why” behind every concept; strictly say no to rote memorization.
  • International Standards: Bilingual (Vietnamese – English) course materials curated from top-tier universities and prestigious ACM-ICPC competitions.
  • Instant Feedback: Gain hands-on experience via Big-O’s proprietary Auto-grading system, integrated with global platforms like Codeforces, LeetCode, and HackerRank. Get results in just one click.
  • Multi-dimensional Perspective: Lectures are demonstrated across C++, Java, and Python, helping students avoid the “single-language trap” and grasp universal programming logic.
* Specialized “3-Tier” Support Ecosystem
  • Industry Experts: Learn directly from a faculty of seasoned algorithmic experts.
  • Micro-Mentoring: A 1:5 Teaching Assistant-to-Student ratio, focusing on guiding your thought process rather than just providing answers.
  • 24/7 Tech Support: A hybrid model featuring instant AI Assistant feedback combined with weekly deep-dive Office Hours.
  • Alumni Network: Connect with a global community of alumni working at world-leading tech corporations.

2. GRADUATE PROFILE:

FROM “BEGINNER” TO “THINKING PROGRAMMER”

  • Solid Foundation in Programming & Computational Thinking: Systematize all knowledge from basic to advanced levels – Variables, Loops, Functions, Arrays, Strings, Recursion, and Data Structures. Fully prepared for university entrance exams or advanced specialized courses.
  • Mastery of Core Subjects: Gain a deep understanding of Introduction to Programming and Programming Techniques – the bedrock of every IT curriculum worldwide.
  • Ready for Competitive Arenas: Confidently participate in Informatics Olympiads (Collegiate/University levels) or test your skills on Codeforces, CodeChef, and AtCoder (Div 3 – Div 2), building an impressive profile for employment or study abroad applications.
  • Proficiency in Professional Tools (NEW): Master Git for source control, adopt methodical debugging, and learn to generate custom test cases – essential industry skills that many working professionals still lack.
  • AI-Assisted Mindset: You won’t just learn to code; you’ll learn to leverage AI as a personal tutor – using it for step-by-step learning, self-quizzing, and creating knowledge notebooks. You graduate as a “Smart Learner,” not a “Copy-Paste Coder.”
  • Clear Career Orientation: Gain direct insights from instructors, mentors, and alumni regarding future career paths, helping you make the right specialized choices from the very beginning.

GREEN COURSE SYLLABUS

Learn programming basic concepts. Introduction to a basic program structure, data types, arithmetic, and logical operations. Get familiar with the grading system.

Write a basic program:

  • Input and output data from the screen.
  • Perform some basic arithmetic operations.
  • Introduction to conditional structure, branching: concepts and notes.

    Solve real problems:

  • Check if a year is a leap year or not.
  • Calculate monthly electricity bill according to usage.
  • Introduction to the loop structure: concepts, classifications, and techniques for dealing with loops.

    Solve real problems:

  • Calculate the number of tiles needed to cover the floor.
  • Calculate the capacity of an electric train.
  • Learn about sub-program: concepts, structures, and uses

    Introduction to local and global variables.

    Introduction to the way to split program files.

    Install some commonly used basic functions:

  • Check for prime numbers.
  • Find the greatest common divisor of 2 integers.
  • Learn about array data types, 1-dimensional arrays: concepts, how to access elements, processing techniques on 1-dimensional arrays.

    Introducing the method of checking program errors, finding errors quickly.

    Introduction to calculation methods and quick approach to the problem.

    Solve some real problems:

  • Solve the problem of buying fruit in the supermarket.
  • Manage the IDs of the employees in the company.
  • Check which post has the most likes.
  • Learn about 2-dimensional and multi-dimensional arrays: concepts, how to access array elements, processing techniques on 2-dimensional arrays.

    Solve some real problems:

  • Playing chess.
  • Count the number of likes of a photo album on social networks.
  • Learn about strings and character types: concepts, programming techniques with string.

    Introduction to ASCII table.

    Application exercises:

  • Name normalization.
  • Count distinct characters.
  • Midterm contest of the course.

    Learn about Basic Recursive Programming Techniques: concepts, classifications, and recursive techniques.

    Basic introduction to advanced data structures Stack.

    Solving classical problems with recursion:

  • Find the Fibonacci number.
  • Binary and decimal conversion application.
  • Learn about struct/class: Apply struct/class to create new data types to help avoid confusion and ease program management.

    Introduction to getters and setters in accessing and manipulating properties in struct/class.

    Solve real problems:

  • Search and store student/staff information.
  • Find the furthest point in a two-dimensional (2D) coordinate system.
  • Learn about the classic Sorting Algorithms.

    Brief introduction and familiarization with Algorithm complexity.

    Solve practical problems:

  • Sort the IDs and scores of a list of students.
  • Find a solution to help Vasya build the tower
  • Introduction to the linked list, FIFO and LIFO single-linked list storage, basic operations on singly linked list.

    Pointer: Extra lessons for C++ language.

    Solving simple linked list problems:

  • Find hotel availability based on given information.
  • Find the reverse linked list.
  • Review what students have learned. With some exercises:

  • Fibonacci numbers.
  • Search for the required element.
  • Create a list of specified nodes.
  • Introduction to tree hierarchical data structures (Tree) in programming: Definition, classification, and basic concepts related to Tree.

    Learn about Binary Tree data structures, especially Binary Search Tree: operations and traversal on binary search trees.

    Solve tree problems:

  • Find the student with the highest score.
  • Visualize a binary tree from a top-down view.
  • Level order traversal.
  • Introduction to graph data structures: Graph definition, graph types, order of vertices, graph representation, graph isomorphism, subgraph - part graph, chain, path.

    Solve basic graph data structure problems:

  • Find the degree of a vertex in an undirected graph.
  • Calculate the weight product of the dotted edges in a directed graph.
  • The final contest of the course.