Skip to content

abderrahmane-salmi/competitive-programming-handsons-unipi

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

54 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Competitive Programming and Contests - Hands-On Repository

This repository contains the solutions and implementations of the hands-on exercises for the Competitive Programming and Contests course at the University of Pisa, offered in the academic year 2024-25. The course covers essential algorithms and data structures, helping students build practical skills in competitive programming.

The hands-on exercises cover a range of topics, including binary trees, segment trees, and dynamic programming, all implemented in Rust.

Hands-On Overview

Hands-On 1: Recursive Traversals of a Binary Tree

  • Date: October 4, 2024
  • Objective: Implement recursive traversals of a binary tree in Rust.
  • Key Topics: Binary trees, recursive algorithms, depth-first search (DFS).
  • Description: This hands-on assignment focuses on understanding and implementing recursive tree traversal techniques. These exercises are essential for coding interviews and building a deeper understanding of binary trees.
  • Link to details: Hands-On 1 Blog

Hands-On 2: Segment Trees

  • Date: November 7, 2024
  • Objective: Implement and solve problems using Segment Trees in Rust.
  • Key Topics: Segment trees, range queries, range updates.
  • Description: In this hands-on, we focus on learning how to efficiently solve problems using segment trees, a powerful data structure used for range queries and updates. There are two problems to solve related to segment trees.
  • Link to details: Hands-On 2 Blog

Hands-On 3: Dynamic Programming

  • Date: December 4, 2024
  • Objective: Solve dynamic programming problems in Rust.
  • Key Topics: Dynamic programming, optimization problems, memoization.
  • Description: This hands-on focuses on solving problems using dynamic programming, a technique for solving complex problems by breaking them down into simpler subproblems. Two problems are provided to practice dynamic programming approaches.
  • Link to details: Hands-On 3 Blog

Technologies Used

  • Rust: The primary programming language used for the assignments.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages