This repository contains my daily Python learning journey from scratch to advanced developer.
My goal is to become a software developer at a top company like Google, Microsoft, etc.
- Learned Python syntax, variables, input/output
- Practiced:
- Find max element in list
- Reverse a list
- Sum of array elements
- Practiced
if-else
,for
,range()
- Solved:
- Count even & odd numbers
- Find second largest number
- Check if array is sorted
- π€ Code pushed to GitHub
- Learned to define and return from functions
- Practiced string methods like
strip()
,lower()
,replace()
- Solved:
- Vowel Counter
- Palindrome Checker
- Duplicate Elements in List
- Learned:
- List & Dictionary methods
- Solved:
- Linear Search
- Binary Search
- Frequency counter using dictionary
- Solved:
- Bubble Sort
- Selection Sort
- Insertion Sort
- Learned:
- Recursions
- Solved:
- Recursive problems: factorial, fibonacci, sum of array, sum of digits, palindrome check
- Printed patterns: right-angled, inverted, and number triangle
- Learned:
- File Handling and String Manipulation
- Solved:
- Reversed strings, counted words, detected anagrams
- Performed read/write/append using Python file handling
- Fully working
.txt
based data operation
- Learned:
- Class, Object, Constructor
- Inheritance, Encapsulation, Polymorphism
- Solved:
- Created and printed class objects
- Method overriding using inheritance
- Used private variables via getter/setter
- Demonstrated polymorphism with multiple classes
- Built a Bank App with deposit, withdraw, and balance check
- Learned:
- Lambda, map, filter, reduce
- Comprehensions, zip, enumerate
- Nested Functions
- Solved:
- Map & filter with lambda
- Reduce to sum elements
- List & dict comprehension
- Used zip, enumerate
- Created multiplier with nested function
- Learned:
- try, except, else, finally
- Custom exceptions
- File read, write, append using
with open()
- Solved:
- Handled ZeroDivisionError and ValueError
- Demonstrated all 4 blocks (try, except, else, finally)
- Created custom exception for age check
- Handled file not found error
- Counted lines in a file
- Performed write β append β read operations
- Learned:
- Math operations using
math
module - Random number generation and list shuffle
- Current date, time, and formatting with
datetime
- Printed full year calendar using
calendar
- Math operations using
- Solved:
- Calculated sqrt, ceil, floor, factorial, and power
- Generated random numbers and choices
- Displayed and formatted date/time
- Printed calendar for the year 2025
- Learned:
- Read/write JSON using
json.dump()
&json.load()
- Create and read CSV files with
csv.writer()
&csv.reader()
- Performed OS operations: list files, create folders, rename & delete files
- Read/write JSON using
- Solved:
- Stored and updated data in JSON
- Created and printed rows from CSV
- Listed directory contents using
os
- Renamed and deleted files programmatically
- Learned:
- Used
re
module for pattern matching - Applied
search()
,match()
,findall()
,sub()
- Used
- Solved:
- Checked if string contains digits
- Extracted words from text
- Validated email format
- Replaced digits with underscores
- Verified if string starts with a word
- Learned:
- Used built-in modules like
math
,datetime
- Created custom module with
add()
andsub()
- Built a package
mypackage
with reusable functions
- Used built-in modules like
- Solved:
- Used custom and built-in functions together
- Imported from separate modules and folders
β Easy:
- Add Digit
- Contains Duplicate
- FizzBuzz
- Remove Duplicates from Array
- Reverse String
- Single Number
- Two Sum
- Valid Palindrome
β Medium:
- Group Anagram
- Maximum Subarray
β Easy:
- Fibonacci Number
- Find the Difference
- Intersection of Two Arrays
β Easy:
- Valid Anagram
- Factorial Trailing Zeroes
- Power of Two
β Easy:
- Power of Three
- Move Zeroes
β Medium:
- Top K Frequent Elements
β Easy:
- Armstrong Number
- Remove Vowels from String
β Easy:
- Reverse Vowels of a String
- Count Camel Case Characters
β Easy:
- Implement strStr()
- Longest Common Prefix
β Easy:
- Merge Sorted Array
- Squares of a Sorted Array
β Easy/Medium:
- Two Sum II β Input Array is Sorted
- Minimum Size Subarray Sum
β Easy:
- Check If N and Its Double Exist
- Maximum Average Subarray I
β Easy:
- Find Pivot Index
- Binary Search
β Easy:
- Search Insert Position
β Medium:
- Count Primes
β Easy:
- Smallest Even Multiple
- Most Frequent Even Element
β Medium:
- Divide Two Integers
- Reverse Integer
β Easy/Medium:
- Multiply Strings
- Pow(x, n)
β Easy:
- Roman to Integer
- Length of Last Word
β Easy:
- Sqrt(x)
- Valid Perfect Square
β Easy:
- Add to Array-Form of Integer
- Add Strings
β Completed:
- Two Pointer Technique β GeeksForGeeks..
π Learning Next:
- Sliding Window Technique
- Kadane's Algorithm
- Prefix Sum
- Python 3.12
- GitHub
- VS Code
- Day 1
- Day 2
- Day 3
- Day 4
- Day 5
- Day 6
- Day 7
- Day 8
- Day 9
- Day 10
- Day 11
- Day 12
- Day 13
- Day 14
- Day 1 - LeetCode Practice(Before DSA)
- Day 2 - LeetCode Practice(Before DSA)
- Day 3 - LeetCode Practice(Before DSA)
- Day 4 - LeetCode Practice(Before DSA)
- Day 5 - LeetCode Practice(Before DSA)
- Day 6 - LeetCode Practice(Before DSA)
- Day 7 - LeetCode Practice(Before DSA)
- Day 8 - LeetCode Practice(Before DSA)
- Day 9 - LeetCode Practice(Before DSA)
- Day 10 - LeetCode Practice(Before DSA)
- Day 11 - LeetCode Practice(Before DSA)
- Day 12 - LeetCode Practice(Before DSA)
- Day 13 - LeetCode Practice(Before DSA)
- Day 14 - LeetCode Practice(Before DSA)
- Day 15 - LeetCode Practice(Before DSA)
- Day 16 - LeetCode Practice(Before DSA)
- Day 17 - LeetCode Practice(Before DSA)
- Day 18 - LeetCode Practice(Before DSA)
- DSA Day 01 β Started Arrays & Patterns | Completed Two Pointers (GFG)
- DSA Day 01 - Started Arrays & Patterns (Coming up π₯)
Build strong DSA + Python + Project skills to crack FAANG-level jobs by consistent daily practice π―