Skip to content

Latest commit

 

History

History
30 lines (24 loc) · 1.79 KB

File metadata and controls

30 lines (24 loc) · 1.79 KB

Python Principles

A collection of Python programs demonstrating programming principles and algorithms, including recursion, generators, lambda functions, first-class functions, OOP, list comprehensions, and classic algorithms such as the Sieve of Eratosthenes

Each exercise is self-contained with its own README explaining the concept, approach, and how to run it.


Exercises

Exercise Concept
fibonacci Recursion, iteration, memoization, timing
recursion Recursive vs iterative factorial
generators yield, generator expressions, infinite sequences
lambda-functions Anonymous functions, sort keys
functions-as-objects First-class functions, higher-order functions
classes OOP, __init__, __str__, __eq__
list-comprehensions Comprehensions, 2D list pitfall
named-tuples collections.namedtuple
defaultdict collections.defaultdict, missing keys
unpacking Tuple/list unpacking, *args, zip
itertools-chain Combining iterables, flattening
sieve-of-eratosthenes Prime generation, optimised sieve
monty-hall Probability simulation
roman-numerals String processing, greedy algorithm
pascal-triangle Dynamic programming, formatted output
eight-puzzle BFS, state space search
coin-systems Greedy algorithm