🚀 Day 40 of My Full Stack Developer Internship @ Tap Academy 💻✨ I’m excited to share another milestone in my learning journey as a Full Stack Developer Intern! Each day is helping me build stronger fundamentals and practical understanding. 📘 Today’s Topic: TreeSet in Java (Java Collections Framework) In today’s session, I explored the powerful TreeSet class and its role in handling sorted data efficiently. Here’s a quick summary of what I learned: 🔹 Key Concepts I Learned: ✔️ TreeSet stores elements in sorted (ascending) order by default ✔️ It is based on a Binary Search Tree (BST) ✔️ No duplicate elements are allowed ✔️ Does not allow null values ✔️ Provides efficient operations with O(log n) time complexity ✔️ Useful for maintaining unique and sorted data 🔹 Important Methods: ➡️ add() – Adds elements ➡️ first() / last() – Retrieves first & last elements ➡️ headSet() / tailSet() / subSet() – Range operations ➡️ ceiling() / floor() / higher() / lower() – Navigation methods ➡️ pollFirst() / pollLast() – Removes elements 🔹 When to Use TreeSet? ✔️ When data needs to be automatically sorted ✔️ When duplicates are not allowed ✔️ When performing range-based operations ✔️ When fast searching and ordering is required 🔹 Hierarchy Insight: Collection → Set → SortedSet → NavigableSet → TreeSet 💡 This session helped me understand how TreeSet is different from other collections and when to use it effectively in real-world applications. I’m looking forward to applying these concepts in projects and continuing to grow step by step! 🚀 #FullStackDeveloper #Java #TreeSet #JavaCollections #LearningJourney #CodingLife #DeveloperJourney #TapAcademy #100DaysOfCode #SoftwareDevelopment #Programming #InternshipExperience
Learning TreeSet in Java at Tap Academy
More Relevant Posts
-
🚀 Day 41 of My Full Stack Developer Internship @ Tap Academy 💻✨ I’m excited to continue sharing my journey as a Full Stack Developer Intern! Every day is helping me strengthen my understanding of core Java concepts and data structures. 📘 Today’s Topic: HashSet in Java (Java Collections Framework) In today’s session, I explored the powerful HashSet class and how it efficiently stores and manages data. 🔹 Key Concepts I Learned: ✔️ No Duplicate Elements – HashSet automatically removes duplicate values ✔️ Unordered Collection – Does not maintain insertion order ✔️ Allows Null Values – Only one null element is permitted ✔️ Internal Working – Uses hashing mechanism (hash function & hash table) ✔️ Default Capacity & Load Factor – Initial capacity = 16, Load factor = 0.75 ✔️ Fast Operations – Insertion, deletion, and search in O(1) time complexity ✔️ Heterogeneous Data – Can store different types of objects 🔹 When to Use HashSet? 👉 When you need unique elements only 👉 When order is not important 👉 When you want fast performance 📊 I also explored how hash functions work internally, how elements are stored in buckets, and how load factor affects resizing of the HashSet. 📸 Sharing my handwritten notes from today’s learning session! 💡 Every concept I learn brings me one step closer to becoming a better developer. Consistency is key! 🔥 🔗 #FullStackDeveloper #Java #JavaCollections #HashSet #LearningJourney #Internship #TapAcademy #CodingLife #DeveloperJourney #100DaysOfCode #TechLearning #Programming #FutureDeveloper 🚀💻
To view or add a comment, sign in
-
-
🚀 Day 42 as a Full Stack Developer Intern at Tap Academy Excited to share my learning journey as I continue growing in my Full Stack Development internship! 💻✨ Today’s session focused on one of the most important data structures in Java — HashMap 🔑 📌 What I learned: 🔹 Core methods of HashMap: put(K, V) – to insert key-value pairs entrySet() – to access entries keySet() – to get all keys values() – to get all values 🔹 When to use HashMap? ✔️ When working with key-value pairs ✔️ Fast insertion and access (O(1)) ⚡ ✔️ Useful for storing and retrieving data efficiently 🔹 Key Properties: ✅ Allows heterogeneous values ❌ No duplicate keys (but duplicate values allowed) ❌ Does not maintain insertion order ✔️ Allows one null key and multiple null values 🔹 Additional Concepts: 🔸 Initial capacity (default: 16) 🔸 Internal working based on hashing 🔸 Difference between HashMap, LinkedHashMap (maintains order), and TreeMap (sorted order) Learning step by step and building a strong foundation in Java 🔥 Looking forward to diving deeper into more advanced concepts! #FullStackDevelopment #Java #HashMap #LearningJourney #CodingLife #DeveloperLife #Internship #TapAcademy #100DaysOfCode #Programming #JavaDeveloper 🚀💡
To view or add a comment, sign in
-
-
🔹 Day 52 of My Internship @ Tap Academy 🚀 Today I explored one of the most important concepts in Java for writing clean and flexible code — compareTo() & Comparator 🔥 Understanding how objects are compared is crucial when working with collections like Lists, Sets, and Maps. 💡 Here’s what I learned: ✔ compareTo() (Comparable Interface) Defines the natural/default sorting Implemented inside the class itself Useful when you have a single sorting logic ✔ Comparator Interface Used for custom and multiple sorting strategies No need to modify the original class Helps write clean and reusable code 👉 In simple terms: Comparable = One default way to compare Comparator = Multiple ways to compare This concept is heavily used in real-world applications like sorting users, ranking systems, and data processing. 📌 Mastering these small concepts builds a strong foundation for writing scalable Java applications. Consistency is the key — showing up every day and learning something new 💯 #Day52 #Java #Programming #CodingJourney #SoftwareDevelopment #DeveloperLife #LearnJava #TechSkills #Coding #JavaDeveloper #CollectionsFramework #ProblemSolving #100DaysOfCode #InternshipExperience #CareerGrowth 🚀
To view or add a comment, sign in
-
-
🚀 Day-51 of My Internship @ Tap Academy 🚀 Today, I explored one of the most important concepts in Java that directly connects to real-world applications — Sorting & Object Comparison. Here’s what I learned 👇 🔸 Comparable vs Comparator Understanding the difference between natural sorting and custom sorting completely changed how I look at data organization. ✔️ Comparable → Defines a single default sorting logic ✔️ Comparator → Allows multiple custom sorting strategies 🔸 Wrapper Classes Ever wondered how Java Collections handle primitives? That’s where wrapper classes come in: 👉 Converting primitives into objects 👉 Enabling powerful utilities like sorting, searching, and more 🔸 Sorting in Action From simple lists to complex objects, sorting plays a key role in: 📊 Data organization ⚡ Performance optimization 🏆 Real-world use cases like rankings & leaderboards 💡 Key takeaway: Writing code is one thing, but making data structured, searchable, and optimized is what makes a developer stand out. Excited to keep learning and building! 🚀 #Java #Programming #CodingJourney #SoftwareDevelopment #JavaDeveloper #LearningInPublic #100DaysOfCode #InternshipJourney #TechLearning #Developers #CodeNewbie #ProgrammingLife #BackendDevelopment #DSA #CareerGrowth #TechCommunity #CodingLife
To view or add a comment, sign in
-
-
🚀 Day 8 of My Internship Journey at Tap Academy From learning basic arrays to now working with Objects in Arrays — this journey is getting more interesting day by day! “It all starts from simple concepts… and gradually builds into real-world problem solving.” Today, I explored how arrays can store not just primitive data, but also objects, making programs more powerful and practical. 🔹 What I Learned Today • How to create an array of objects in Java • Storing multiple objects (like Employee details) inside an array • Accessing object properties using array indexing • Understanding how memory is allocated for objects 🔹 Key Concept Instead of storing just values, we can store complete entities (like an Employee with id, name, salary) inside arrays — which is widely used in real-world applications. 🔹 Example Insight Created an Employee class and stored multiple employee objects inside an array, then accessed and displayed their details using loops. 🔹 Key Takeaways ✔ Bridges the gap between arrays and object-oriented programming ✔ Helps in handling real-world structured data ✔ Improves problem-solving with better data organization ✔ Strengthens OOP concepts in Java This concept made me realize how programming evolves from storing simple values to managing complete real-world data efficiently. Excited to dive deeper into advanced concepts and keep growing every day 🚀 #Internship #Java #OOP #Arrays #LearningJourney #Programming #SoftwareDevelopment #TapAcademy TAP Academy
To view or add a comment, sign in
-
-
Not gonna lie — when I started my Java Backend Internship , I thought: “API bana lenge… ho jayega.” Reality hit different. First few days nothing worked the way I expected. Errors I didn’t understand. Code that ran… but broke something else. And deadlines that didn’t care whether I was “learning” or not. But somewhere in between debugging random issues at night and fixing things last minute… things started to click. I learned how backend works — not the tutorial version. Why structure matters (Controller → Service → Repository (is not just theory)) How small mistakes can break entire flows Writing code that others can read, not just me( most important) And most importantly… how to stay calm when everything crashes. One thing I’ll take with me: “Working code” is not enough. It must be reliable. Huge thanks to my seniors/mentors — strict at times, but that’s what pushed me to improve fast. Still a lot to learn, but yeah… not the same developer I was before this. #Backend #Java #SpringBoot #Internship #RealLearning #DeveloperJourney
To view or add a comment, sign in
-
🚀 Day 51 of My Internship Journey at Tap Academy Today’s learning deepened my understanding of how Java data structures work behind the scenes—especially how Linked Lists power core structures like Stacks, Queues, and Deques (Double-ended Queues). 🔹 Understanding the Core Concepts One of the key takeaways was how data access patterns define these structures: - Stack (LIFO) – Last-In, First-Out - Queue (FIFO) – First-In, First-Out - Deque (DQs) – Flexible insertion/removal from both ends This helped me see how choosing the right structure directly impacts performance and design. 🔹 LinkedList as a Foundation Using LinkedList, we implemented: - "push()" and "pop()" → Stack operations - "peek()" → View top element - "poll()" → Retrieve & remove elements (Queue behavior) What stood out is how doubly linked lists enable efficient insertions and deletions without shifting elements—making them powerful for dynamic data handling. 🔹 Memory vs Performance Trade-off While LinkedLists are flexible, they come with extra memory overhead due to node storage (data + pointers). In contrast, ArrayDeque: - Is more memory efficient - Has a default capacity of 16 - Provides faster performance for most stack/queue operations 👉 This comparison made it clear: choosing the right data structure depends on the use case, not just functionality. 🔹 The Bigger Picture Understanding the Java Collections Framework hierarchy is crucial. It’s not just about using methods—it’s about knowing why and when to use each structure. 💡 Key Learning: Consistent hands-on coding and experimenting with real implementations is the best way to master these concepts. Looking forward to applying these learnings in real-world projects! 💻🔥 #Java #DataStructures #LinkedList #Stack #Queue #Deque #JavaCollections #Programming #LearningJourney #InternshipExperience #TapAcademy TAP Academy Sharath R Harshit T Somanna M G
To view or add a comment, sign in
-
-
My Internship Journey at Tap Academy Today, I stepped into one of the most important concepts in Java — Collections Framework 🚀 This session completely changed how I look at handling data in real-world applications. It’s not just about storing data anymore, but about doing it efficiently and smartly. 🔹 What I Explored • What is a Collection & why it is important • Difference between Data Structures vs Collections • Role of Collections in real-world applications • Introduction to List, Set, and Map interfaces • Deep dive into ArrayList • How Collections reduce manual coding effort 🔹 Key Learnings ✔ Collections are an inbuilt alternative to Data Structures ✔ No need to manually implement logic like traversal, resizing, etc. ✔ Everything is available as ready-made classes & methods ✔ ArrayList uses a dynamic (resizable) array internally ✔ Default capacity of ArrayList= 10 ✔ Supports heterogeneous data, duplicates, and null values ✔ Maintains insertion order ✔ Automatically resizes when capacity is exceeded 🔹 Real Understanding In DSA → we write logic manually In Collections → Java gives optimized logic already built-in So instead of writing 20 lines of code… we can solve the same problem in just a few lines using Collections. 🔹 Important Insight Learning Collections is not about “how it works internally” — it’s about when and where to use which class and method. Excited to explore more classes like LinkedList, Set, Map and master this powerful framework #Internship #Java #Collections #ArrayList #DSA #Programming #CodingJourney #LearningJourney #TapAcademy TAP Academy
To view or add a comment, sign in
-
-
🚀 Day 5 of My Internship Journey at Tap Academy Continuing my learning journey, today I explored one of the most fundamental data structures in Java — 1D Arrays. Here’s what I learned: 🔹 What is a 1D Array? A one-dimensional array is a collection of elements of the same data type stored in a contiguous memory location. It helps in managing multiple values using a single variable. 🔹 Declaration & Initialization Learned different ways to declare and initialize arrays: • int[] arr = new int[5]; • int[] arr = {1, 2, 3, 4, 5}; 🔹 Accessing Elements Array elements are accessed using index values starting from 0. Example: arr[0], arr[1] 🔹 Traversal of Array Understood how to iterate through arrays using loops like for loop to process each element efficiently. 🔹 Why Arrays are Important? ✔ Store multiple values efficiently ✔ Easy data access using index ✔ Helps in solving complex problems ✔ Foundation for advanced data structures Learning arrays gave me a strong foundation for handling data in Java and solving real-world problems more effectively. Excited to explore more data structures in the upcoming days! #Internship #Java #Arrays #DataStructures #Programming #LearningJourney #TapAcademy TAP Academy
To view or add a comment, sign in
-
-
🚀 Day 50 of My Internship Journey at Tap Academy Today’s learning deep dive was into one of the most powerful data structures in the Java Collections Framework — the Java LinkedList. Understanding how LinkedList works internally really changed how I think about data handling and performance in Java. 🔍 Key Learnings 📌 1. LinkedList vs ArrayList Unlike the Java ArrayList, which is backed by a dynamic array, LinkedList is implemented using a doubly linked list structure. This means: Each element (node) stores references to both previous and next nodes No shifting of elements during insertion or deletion More efficient for frequent modifications 📌 2. Dynamic Nature & Capacity A LinkedList starts with zero capacity and grows dynamically as elements are added — making it highly flexible compared to arrays. 📌 3. Efficient Insertions & Deletions One of the biggest advantages: Inserting/removing elements is faster than ArrayList (especially in the middle) No need to shift elements → better performance in such operations 📌 4. Constructors & Collection Conversion Learned how LinkedList can be initialized using different constructors: Empty LinkedList From another collection This demonstrates the power of polymorphism and loose coupling, where code becomes more flexible and reusable. 📌 5. Traversing LinkedList (4 Ways) We explored multiple ways to access elements: 1️⃣ Standard for loop 2️⃣ Enhanced for-each loop 3️⃣ Iterator (forward traversal) 4️⃣ ListIterator (forward + backward traversal) 💡 The ListIterator stood out as the most powerful because it allows: Bidirectional traversal Modification during iteration 📌 6. Importance of Collections Framework The Java Collections Framework provides ready-made data structures like LinkedList, saving developers from building complex structures manually (as done in languages like C). 💡 My Key Takeaway Choosing the right data structure is not just about functionality — it's about performance and efficiency. Use ArrayList when frequent access is needed Use LinkedList when frequent insertions/deletions are required ✨ Grateful to keep learning and growing every day in this journey! #Java #LinkedList #CollectionsFramework #Programming #SoftwareDevelopment #LearningJourney #Internship #JavaDeveloper #Coding #TechSkills TAP Academy Sharath R Harshit T Somanna M G
To view or add a comment, sign in
-
Explore content categories
- Career
- Productivity
- Finance
- Soft Skills & Emotional Intelligence
- Project Management
- Education
- Technology
- Leadership
- Ecommerce
- User Experience
- Recruitment & HR
- Customer Experience
- Real Estate
- Marketing
- Sales
- Retail & Merchandising
- Science
- Supply Chain Management
- Future Of Work
- Consulting
- Writing
- Economics
- Artificial Intelligence
- Employee Experience
- Workplace Trends
- Fundraising
- Networking
- Corporate Social Responsibility
- Negotiation
- Communication
- Engineering
- Hospitality & Tourism
- Business Strategy
- Change Management
- Organizational Culture
- Design
- Innovation
- Event Planning
- Training & Development