/DSA

Primary LanguageC++

#100DaysOfCode Journey ๐Ÿš€

Welcome to my #100DaysOfCode journey! ๐ŸŒŸ Follow along as I dive into the world of programming, honing my skills and embracing new knowledge every day. Let's turn each line of code into a step towards mastery! ๐Ÿ’ป๐Ÿ“š

Day 0 - August 26th:

๐ŸŽ‰ Started the Journey: Embarked on this coding adventure, ready to learn and grow!

Day 1 - August 27th:

๐ŸŽฏ Progress: Explored the basics of C++ and realized there's so much more to learn! ๐Ÿคฏ

๐Ÿ“š Topics: Pointers, Pass by value/address, References, Array Pointers, Pointer to Structure.

Day 2 - August 28th:

๐ŸŽฏ Progress: Completed Section 2 of the C/C++ essentials journey. Object-Oriented Programming (OOPS) concepts, Classes, and Template classes are unlocked! ๐Ÿ’ก

๐Ÿ“š Topics: OOPS Principles, Class Fundamentals, Template Class Tricks.

Day 3 - August 29th:

๐ŸŽฏ Progress: Wrapped up Section 4 of Abdul Bari's Mastering DSA course. Explored memory management, data structures, and complexities. ๐Ÿ’ช

๐Ÿ“š Topics: Stack vs Heap Memory, Physical vs Logical Data Structures, Abstract Datatypes, Time and space Complexity.

Day 4 - August 30th:

๐ŸŽฏ Progress: Dived into the magic of recursion! Unraveled the mysteries of stack usage, types of recursion, and complexity calculations.

๐Ÿ“š Topics: How recursion uses stack, Types of Recursion, Complexity Calculation.

Day 5 - August 31st:

๐ŸŽฏ Progress: Today was a bit challenging. Deep into the world of recursion, taking it step by step, and ensuring a thorough understanding.

Sometimes progress may be slow, but it's still progress! ๐Ÿš€

Day 6 - September 1st:

๐ŸŽฏ Progress: I wasn't able to cover much today, but tried to cover those concepts of arrays, which I never touched.

Day 7 - September 2nd:

๐ŸŽฏ Progress: Completed the Array representation section, delving into compiler magic and row/column major formulas for arrays. ๐Ÿ“Š๐Ÿ’ก

Day 8 - September 3rd:

๐ŸŽฏ Progress: A day of competition! Participated in the GFG contest and implemented various array-related operations with enthusiasm. ๐Ÿ’ป๐Ÿ†

Day 9 - September 4th:

๐ŸŽฏ Progress: A day packed with array manipulation! Explored linear and binary search, and mastered array operations like getting, setting, finding averages, finding max values, reversing, shifting, and rotating. ๐Ÿ’ก๐Ÿ’ป

Day 10 - September 5th:

๐ŸŽฏ Progress: Sorting, merging, union, intersection, and difference between two arrays - today's array adventures took me to new heights of manipulation! ๐Ÿ”„๐Ÿงฉ

Day 11 - September 6th:

๐ŸŽฏ Progress: Overcame procrastination to conquer the "stock buy and sell" problem on GeeksforGeeks, a challenge that had stumped me last month. Code optimization is next! ๐Ÿ“ˆ๐Ÿค“

Day 12 - September 7th:

๐ŸŽฏ Progress: Tackled the backlog today! ๐Ÿ“ Wrapped up pending topics with code for array and set operations. Clearing the path for more coding adventures! ๐Ÿš€๐Ÿ’ป

Day 13 - September 8th:

๐ŸŽฏ Progress: Navigating the world of missing elements! ๐Ÿงฉ Explored various scenarios in finding missing elements in arrays - sorted from 1, sorted from random numbers, and dealing with multiple missing elements. ๐Ÿ•ต๏ธโ€โ™€๏ธ๐Ÿ”

Day 14 - September 9th:

๐ŸŽฏ Progress: Completed the Array ADT section today! Explored different methods to find duplicates in sorted and unsorted arrays, uncovering pairs of elements with a given sum, and finding max/min in a single scan. ๐Ÿง๐Ÿ”

Day 15 - September 10th:

๐ŸŽฏ Progress: Explored the world of Strings! ๐Ÿงต Found Abdul Bari sir's Udemy course on DSA really useful, well-structured, and interactive. ๐Ÿ’ก Covered a range of string operations - from length and case changes to counting words, vowels, validation, and reversing. ๐Ÿš€๐Ÿ’ฌ #100DaysOfCode #StringMagic ๐Ÿ‘ฉโ€๐Ÿ’ป๐Ÿ“–

Every challenge is a chance to grow! ๐Ÿ’ช

Day 16 - September 11th:

๐ŸŽฏ Progress: Delved deep into strings today! Wrote my own functions for string operations - length, word count, vowels count, lower, and upper case. Also explored non-string topics, like palindromes, and tackled the GCD problem using recursion. The journey continues! ๐Ÿš€๐Ÿงฉ #100DaysOfCode #CodingJourney ๐Ÿ‘ฉโ€๐Ÿ’ป๐Ÿ“š

Day 17 - September 12th:

๐ŸŽฏ Progress: No major update today, just solved three basic problems on HackerRank.

Day 18 - September 13th:

๐ŸŽฏ Progress: Today's topics: Palindrome magic! ๐Ÿ”„ Also, delving into the art of checking duplicates in a string using both recursion and hashing. ๐Ÿง™โ€โ™‚๏ธ๐Ÿ’ก The coding adventure continues!

Day 19 - September 14th:

I didn't do much today, got caught up in a web series binge! ๐Ÿ˜… But in the end, managed to dive into the world of hashing in strings and explored the magic of bitwise operations for finding duplicates. Progress, no matter how small, is still progress!

Day 20 - September 15th:

๐Ÿงต Wrapped up the Strings section today! ๐Ÿ’ก Explored finding duplicates using bit operations, cracked the code on anagrams, and delved into permutations of strings.

Day 21 - September 16th:

I spent most of my time collecting papers for my research thesis instead of finding anything fruitful related to DSA.

Day 22 - September 17th:

๐Ÿ”„ Revised Recursion concepts & solved a few string-related questions. Also participated in a Leetcode contest and managed to solve one easy-level problem. Started with the Matrices section. The coding journey never stops! ๐Ÿš€๐Ÿ’ป

Day 23 - September 18th:

๐Ÿ“Š Unveiled the magic of Diagonal Matrices, Lower and Upper Order Matrices! ๐Ÿงฎ Explored memory optimization by using a single-dimensional array instead of wasting space on null values. Efficiency is key! ๐Ÿ’ก๐Ÿ’พ

Day 24 - September 19th:

โญ๏ธ Limited time but maximum effort! โณ๐Ÿš€ Solved challenging string-related questions on HackerRank using Python, earning my 4th silver badge star. ๐ŸŒŸ Also tackled a problem-solving question, securing my 3rd silver star on HackerRank. The stars keep shining! ๐ŸŒ ๐Ÿ’ซ

Day 25 - September 20th:

๐Ÿง  Today's focus: Memory optimization techniques for Diagonal, Tri-Diagonal/Band, and Toeplitz matrices. ๐Ÿค– Also, tackled a few challenges on HackerRank. Learning and coding in full swing! ๐Ÿš€๐Ÿ’ก

Day 26 - September 21st:

๐Ÿš€ Job-A-Thon adventure on @GeeksForGeeks! ๐Ÿ’ผ Solved 1 out of 3 questions. The exciting part? First time ever I used the power of pen, paper, & mathematics to drive a formula that cracked the problem (took half an hour!) instead of directly coding ๐Ÿ“๐Ÿคฏ

Day 27 - September 22nd:

๐Ÿ“š Today, the LinkedList journey begins! ๐Ÿš€ I've been eagerly waiting for this section. Decided to skip Sparse Matrix & Polynomial for now, but they're on my to-do list. Exciting coding adventures ahead! ๐Ÿ’ก๐Ÿ’ป

Day 28 - September 23rd:

๐Ÿ”— Explored LinkedLists today! ๐Ÿš€ Implemented linked lists and performed various operations like displaying data, finding length, and calculating the sum of elements. Also, conquered the "problem of the day" on GFG and tackled a few challenges on HackerRank. Progress is shining bright! ๐Ÿ’ก

Day 29 - September 24th:

๐Ÿงฉ Challenging day! Participated in two contests but couldn't solve any problems fully. Managed to tackle 2 questions partially. ๐Ÿคฏ On the LinkedList journey, exploring Max, Min, and searching. Learning the art of writing recursive functions for them! ๐Ÿš€

๐ŸŽŠ Day 30 ๐ŸŽŠ - September 25th:

๐Ÿ” Navigating the world of searching using recursion and mastering the art of insertion in LinkedLists. ๐Ÿš€ Explored operations like inserting at the front, middle, and after a specific node, even in sorted lists. Learning and growing every day! ๐Ÿ’ก๐Ÿ’ป

Day 31 - September 26th:

๐Ÿงน Explored the art of Linkedlist cleanup today! ๐Ÿšฎ Covered node deletion, checking if the list is sorted, and removing duplicates. Keeping those Linkedlists neat and tidy! ๐Ÿ’ก๐Ÿ’ป

Day 32 - September 27th:

๐Ÿ”„ In the LinkedList saga, today I delved into the art of reversing a LinkedList! ๐Ÿ”„ Explored the sliding window approach and the magic of recursion with two pointers. Adding new tools to the coding arsenal!

Day 33 - September 28th:

๐ŸŒ Learned the art of concatenating two Linked Lists and merging them in sorting order. Also, tackled questions on GeeksforGeeks.

Day 34 - September 29th:

I struggled with merging two sorted linked lists due to a small error. It took longer than expected, but I eventually solved it after repeated debugging. I also worked on detecting loops in linked lists. My pace is slower, I need to spend more time on this section.

Day 35 - September 30th:

Revised the LinkedList section that has been covered so far and practiced the problems. But no major increment in progress today. ๐Ÿ˜‘

Day 36 - October 1st:

๐Ÿคทโ€โ™€๏ธ Sometimes, life throws curveballs! โšพ Not able to dedicate time as planned for DSA. Today, circled back to revisiting the concepts of finding & removing duplicates and loops in the linked list. It's all about persistence! ๐Ÿ“š๐Ÿ”„

Day 37 - October 2nd:

๐Ÿ“… Explored Circular Linked Lists today! ๐Ÿ”„ Learned how to create and display them. Circular adventures in the world of data structures! ๐Ÿ’ก๐Ÿ‘ฉโ€๐Ÿ’ป

Day 38 - October 3rd:

๐Ÿ”„ Circular Linked Lists revisited! ๐Ÿ“บ Rewatched the video to grasp it better. โœ๏ธ Wrote code to create a circular linked list from an array and display it. Strengthening the foundation!

Day 39 - October 4th:

๐Ÿ”„ Continued the Circular Linked List journey today! ๐Ÿš€ Covered insertion and deletion operations. Building the skills step by step! ๐Ÿ“š๐Ÿ”„

Day 40 - October 5th:

๐Ÿ“š Expanded the toolkit! ๐Ÿงฉ Delved into the concept of Maps in the C++ STL library. ๐Ÿ—บ๏ธ Put that knowledge to work, solving a LinkedList question. Learning and applying new tools! ๐Ÿ“–๐Ÿš€

Day 41 - October 6th:

Explored Circular Linked List deletions and ventured into Doubly Linked Lists. Building solid foundations! ๐Ÿ’ช๐Ÿ’ก #100DaysOfCode #LinkedLists ๐Ÿ“š๐Ÿš€

Day 42 - October 7th:

Diving deep into Doubly Linked Lists today! ๐Ÿ”„ Covered creation from an array, insertion at the first and end, deletions, and tracking the length. Double the fun compared to Circular Linked Lists! ๐Ÿ’ช๐Ÿ“š

Day 43 - October 8th:

Tackling the challenges of Doubly Linked Lists! ๐Ÿ”„ Covered reversing a doubly linked list and ventured into Circular Doubly Linked Lists.

Day 44 - October 9th:

Sharpening the coding skills! ๐Ÿš€ Spent the day practicing questions on LinkedLists and other data structures on HackerRank and GeeksForGeeks.

Day 45 - October 10th:

Finishing strong with LinkedLists! ๐Ÿ“š Covered finding the middle of a LinkedList, identifying intersection nodes between two LinkedLists, and comparing various LinkedList types in terms of different operations. Excited to dive into the next section on Stacks tomorrow! ๐Ÿ’ก๐Ÿ‘ฉโ€๐Ÿ’ป

Day 46 - October 11th:

Moving forward with new challenges! ๐Ÿš€ Tackled LinkedList questions and delved into the world of Stacks, exploring various operations. Learning and coding, one step at a time! ๐Ÿ’ก๐Ÿ’ป

Day 47 - October 12th:

Short on time but didn't miss a beat! ๐Ÿ• Covered Stack creation and operations using arrays, getting the foundation in place. Every bit counts! ๐Ÿ’ช๐Ÿ’ก

Day 48 - October 13th:

Having a blast with Stacks! ๐Ÿ’ช Today, I solved some basic stack problems and built a stack from scratch using Linked Lists. Learning by doing!

Day 49 - October 14th:

Getting hands-on with Stack challenges! ๐Ÿงฉ Solved stack questions on GeeksforGeeks, including tasks like parenthesis matching and removing middle elements.

๐ŸŽŠ Day 50 ๐ŸŽŠ - October 15th:

๐ŸŽ‰ Halfway through the journey! ๐Ÿš€ Today, I tackled the multiple parenthesis checker problem with stacks and delved into the basics of infix, postfix, and prefix expressions. Onward and upward! ๐Ÿ’ช๐Ÿ’ก

Day 51 - October 16th:

We all have those days! ๐Ÿคทโ€โ™‚๏ธ Didn't accomplish as much, but I tried my hand at solving problems on GeeksforGeeks and HackerRank. Progress comes in all forms! ๐Ÿ’ช๐Ÿ’ป #100DaysOfCode #CodingJourney ๐Ÿ“š๐Ÿš€

Day 52 - October 17th:

No major update today. Just tried solving a few problems on HackerRank and GeeksForGeeks.

Day 53 - October 18th:

Progress has slowed down, but the journey continues. Balancing research thesis and coding efforts. Focusing on infix to postfix with stacks. ๐Ÿ“š๐Ÿ’ก #100DaysOfCode #KeepItSimple ๐Ÿš€๐Ÿ’ช

Day 54 - October 19th:

๐Ÿ“ Wrote code for infix to postfix conversion and practiced stack problems on GeeksforGeeks.

Day 55 - October 20th:

๐Ÿ“š Covered the stack topics that were left earlier and practiced questions on GeeksforGeeks. Making progress one step at a time! ๐Ÿ’ช๐Ÿ’ก

Day 56 - October 21st:

Today I tried solving two medium level stack related problem, but I was able to solve only one of them that is getting next greater element.

Day 57 - October 22nd:

Double-stack power! ๐Ÿ”ฅ Solved two stack-related questions:

  1. Implementing two stacks in one array.
  2. Building a queue using stacks. Learning and coding the stack way! ๐Ÿ’ก

Day 58 - October 23rd:

Moving on to the next challenge! ๐Ÿš€ Started working on the Queue section, covered the basics, and successfully implemented a queue using arrays. Onward to the next level! ๐Ÿ’ช๐Ÿ’ก


Let's keep this coding momentum going! Exciting times ahead as I continue this journey of growth and learning. Stay tuned for more updates! ๐ŸŒฑ๐Ÿ‘ฉโ€๐Ÿ’ป


Follow my progress on GitHub and join me on this exciting #100DaysOfCode adventure! ๐Ÿš€๐ŸŒˆ

"The only way to do great work is to love what you do." - Steve Jobs

Follow on Twitter