Trees can solve a wide variety of computer science problems

large tree with many branches in a forest clearing
large tree with many branches in a forest clearing
Photo by veeterzy on Unsplash

Trees are one of the most interesting data structures in computer science. Apart from having common names such as sibling, leaves, parent, child, etc., to represent them, trees can be used to solve some of the most challenging problems in computer science.

Let’s dive into the basic concept of trees, their usage in C++, and their application to some of the most important problems.

The Concept Behind Trees

Trees belong to the class of non-linear data structures. Unlike linear data structures, such as stacks or lists, where elements are stored in linear order, non-linear data structures store elements hierarchically. …

Take your C++ skills to the next level by using “modern” C++

Photo by Toa Heftiba on Unsplash

You know the syntax and coding with C++ language. But do you know what makes you a modern C++ programmer? Is your code using the features introduced with C++ 11, 14 or 17? Are you using the Standard library Classes in your application? Are you aware of C++ lambda functions, smart pointers and expressive for loops?

If your answer is no, here are few tips to level up your C++ skills and make you a modern C++ programmer.

1. Standard Library Containers

Vector, Array and List are the basic library containers used…

Tips to start with your first Android App

Photo by Mika Baumeister on Unsplash

I have been an Android Developer past 5 years from now. Some of the questions I get from my fellow Developers is on How to get started with Android App Development? What are the basics I need to know?

Based on my App Development Experience, I will try to share 5 basic tips to start on your Android App Development Journey.

1. Install Android Studio

This is the most important and mandatory step to start developing Android Apps. I have seen developers who jump start into reading docs for developing apps. Though reading documentation is good…

Few tips to succeed in your programming journey

Photo by Kelly Sikkema on Unsplash

I have been working in the tech industry for close to 7 years now. I am enjoying every bit of my journey as a Software Developer. Though I am not the best developer, there are few important lessons that I have learnt in my role as a Software Developer. These lessons have enriched my developer journey and helped me to seek out on my journey of becoming a Good Developer.

1. Understand the System

The first step to becoming a good developer is to understand what is expected of you. It involves understanding what is the…

Hash maps can solve a whole bunch of different problems

Photo by Héctor J. Rivas on Unsplash.

Hashing is a traditional approach in computer science whereby data structures called hash maps are used to store key-value pairs. Apart from storing key-value pairs, hash maps can be used to solve a wide variety of problems in computer science. When used with priority queues and other container adapters like stacks and queues, hash maps can make problem-solving faster by reducing the running time complexity.

Let’s dive into the basic concept of hash maps, their usage in C++, and applications to some of the most important problems.

The Concept Behind Hash Maps

Hash maps generally store elements as key-value pairs. Consider this example: We want…

Priority queues can solve a whole bunch of different problems

Photo by Levi Jones on Unsplash.

Priority queues, also called heaps, are an oft-misunderstood and underestimated concept in computer science. Though they are very simple, priority queues can serve as powerful tools to solve some of the well-known problems in computer science.

This article focuses on the basic concept of priority queues, their usage in C++, and applications to some of the most important problems.

The Concept Behind Priority Queues

As the name suggests, a priority queue contains elements having a priority associated with them. Let’s start by taking a simple example.

Consider we have a list of grocery items and a priority attached to them. …

Few tips to change your mindset and enjoy your commute time

Photo by Melanie Brown on Unsplash

Commute can be painful in metro cities like Bengaluru which have highest traffic congestion in the world. Since I commute to office every day, I found few ways to enjoy my commute time.

So here are the top 10 things I did to enjoy my daily commute.

1. Relax and Meditate

Meditation is known to calm your mind and bring peace within yourself. Spending 10 minutes of your daily commute time in practicing meditation can reap huge benefits. It improves emotional health and controls anxiety.

2. Learn something new

Life lessons from a solo traveler

Photo by Tyler Nix on Unsplash

I am a solo traveler and yes I am proud of it. Not that I hate being around people during my travel but solo travelling has taught me very important life lessons which wouldn't be the case had I been around people.These lessons have enriched my life and added value to who I am today.

I was inspired to write this article since I feel that there is a taboo around travelling alone especially for women in society. People still feel that traveling solo is something very harmful or dangerous or selfish and I often hear ’n’ number of questions…

How recording your day helps you to grow

Photo by Thought Catalog on Unsplash

I have seen several people who love writing about their day. This includes the good things that they have done, things that they can do to improve themselves, mistakes they have committed and also about their day to day plans or tasks that needs to be executed. Also there are people who document their memories of a favorite trip or a hangout with friends. But a vast majority of people today think Is Documentation really necessary?

Documentation refers to recording something like an event or a process. There are several ways in…

A beautiful journey of a young woman trying to find joy

I often hear people saying that Life is like an ice cream Enjoy it, Live life to the fullest, Be happy Live happy etc. As a young woman growing up in early 20’s, I questioned every time I saw those quotes. How could one stay happy everyday? Aren’t humans bogged down by everyday stress and failures? Is it even possible to stay happy forever in one’s life?

As a free spirited and independent woman trying to juggle career, relationships and an inner battle to find out the true meaning of happiness, I chose to find answers by myself. …

Supriya Sirbi

Software Developer | Writer for Better Programming, Be Yourself, The Ascent and A Few Words

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store