Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/andydeux/gmy2prg

The repository for the Second Year Programming Curriculum of the Gymnasium of Mladenovac. This project encompasses a comprehensive collection of programming exercises and algorithms studied during the second year of gymnasium.
https://github.com/andydeux/gmy2prg

Last synced: about 2 months ago
JSON representation

The repository for the Second Year Programming Curriculum of the Gymnasium of Mladenovac. This project encompasses a comprehensive collection of programming exercises and algorithms studied during the second year of gymnasium.

Awesome Lists containing this project

README

        

# πŸŽ“ Second Year Programming Curriculum of the Gymnasium of Mladenovac πŸš€

Welcome to the repository for the Gymnasium Second Year Programming Curriculum! This project features a comprehensive collection of programming exercises and algorithms studied during the second year of high school. Each code example is documented and explained with the help of ChatGPT 4o. Most of the programming problems are from the site [petlja.org](https://petlja.org/sr-Latn-RS/), while projects such as the Final Project were picked from the [GeeksForGeeks](https://www.geeksforgeeks.org/) Dynamic Programming Problems.


Image 1
Image 2

## πŸ”– Disclaimer

The majority of these exercises, including the pacing and the curriculum structure in this repository closely follow the educational content provided by Professor Filip Marić on his YouTube playlist, which is linked below. While the materials have been adapted to meet the specific needs of the students at the Gymnasium of Mladenovac, they are heavily inspired by these excellent resources.

For a more in-depth understanding, please refer to the [YouTube Playlist by Professor Filip Marić](https://youtube.com/playlist?list=PL-Rqe7KfDxRN5v8HAr9UbwHwXWNkD6PGV&si=PheAeE1PjPg99ZjQ) . This playlist covers the essential topics and provides detailed explanations that complement the exercises and examples found in this repository.

## πŸ“ Repository Structure

### 1 - Recursion - Start of the Year
- Exercises and examples related to recursion, including basic and advanced problems.
- **Examples**: Fibonacci sequence, Counting backwards, Digits from A to B.

### 2 - Backtracking Method - Start of the Year
- Techniques and problems involving backtracking, including classic puzzles and algorithms.
- **Examples**: Chess Queens (Backtracking and Brute Force), Knights Tour, Sudoku.

### 3 - Memoization Technique - Middle of the Year
- Problems and solutions using memoization to optimize recursive algorithms.
- **Examples**: Factorial, Fibonacci sequence with vectors and structs, Function exercises.

### 4 - Dynamic Programming - Middle of the Year
- Dynamic programming techniques and applications to solve complex problems efficiently.
- **Examples**: Coin Change, LCP Matrix, Letter Matching, Staircase problem.

### 5 - Divide and Conquer: Unification Technique - End of the Year
- Techniques for solving problems using divide and conquer strategies.
- **Examples**: MergeSort, Trimini algorithm for filling squares.

### 6 - Greedy Algorithms - End of the Year
- Greedy algorithm problems that build solutions step-by-step for optimal results.
- **Examples**: Activity Scheduling, Classroom Layout.

### FP - Final Project - End of the Year
- Final project showcasing advanced problem-solving techniques and comprehensive solutions.
- **Example**: Palindrome Partitioning using dynamic programming (GeeksforGeeks solution).

## 🌟 Features

- **Code Examples**: Well-documented and functional code snippets in C++.
- **Educational Resources**: Problem descriptions, explanations, and learning materials.
- **Organized Structure**: Clear folder organization by topic and technique for easy navigation and study.

## πŸš€ Getting Started

Clone this repository to your local machine to access all the learning material and examples. Explore, practice and compare the programming techniques covered in the second year of programming in the gymansium of Mladenovac.

```bash
git clone https://github.com/AndyDeux/GMY2PRG/
```

## πŸ“œ License

This project is licensed under the MIT License. See the LICENSE file for more details.