<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>DEV Community: Sumeet M</title>
    <description>The latest articles on DEV Community by Sumeet M (@_sumeetm).</description>
    <link>https://dev.to/_sumeetm</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F114291%2Fcb685479-08ca-471a-a368-b9240f443b26.jpg</url>
      <title>DEV Community: Sumeet M</title>
      <link>https://dev.to/_sumeetm</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/_sumeetm"/>
    <language>en</language>
    <item>
      <title>How to Kickstart Your Data Career Without Leaving Home</title>
      <dc:creator>Sumeet M</dc:creator>
      <pubDate>Fri, 01 Aug 2025 12:02:55 +0000</pubDate>
      <link>https://dev.to/_sumeetm/how-to-kickstart-your-data-career-without-leaving-home-585c</link>
      <guid>https://dev.to/_sumeetm/how-to-kickstart-your-data-career-without-leaving-home-585c</guid>
      <description>&lt;p&gt;I started learning data science from my bedroom during the pandemic with a laptop that could barely handle Chrome and Zoom at the same time. &lt;strong&gt;No computer science degree. No connections in tech. No fancy standing desk or dual-monitor setup.&lt;/strong&gt; Just me, Google, and a lot of self-doubt.&lt;/p&gt;

&lt;p&gt;If you're in the same spot, interested in data but stuck at home, maybe juggling a job or school, unsure where to begin, then &lt;strong&gt;I’ve got you.&lt;/strong&gt; This isn’t a guide to land a six-figure ML role at Meta. &lt;strong&gt;It’s for people who want to actually get started and not feel like they’re constantly behind or “not technical enough.”&lt;/strong&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  1. &lt;strong&gt;Start with the Basics, but Don’t Get Stuck There&lt;/strong&gt;
&lt;/h2&gt;

&lt;p&gt;You don’t need to master calculus or machine learning to start a data career. &lt;strong&gt;The basics, such as Python, statistics, spreadsheets, and SQL, will take you surprisingly far.&lt;/strong&gt; The internet is overflowing with free or affordable learning options like &lt;strong&gt;Khan Academy, Coursera, and DataCamp.&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;You can also check out &lt;a href="https://roadmap.sh" rel="noopener noreferrer"&gt;roadmap.sh&lt;/a&gt; to get a visual idea of what you’re working toward. &lt;strong&gt;Just pick one path and follow it for a few weeks.&lt;/strong&gt; No need to jump between 10 tutorials hoping one of them will unlock your genius.&lt;/p&gt;

&lt;p&gt;In fact, switching too often will only confuse you. I made that mistake. Trying three different Python courses in two weeks, thinking one of them would make it click. Truth is, most of them teach the same thing. &lt;strong&gt;What matters more than the material is the habit of learning.&lt;/strong&gt; Even 30 minutes a day adds up. &lt;strong&gt;Make progress, not perfection, your goal.&lt;/strong&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  2. &lt;strong&gt;Build One Small, Messy Project&lt;/strong&gt;
&lt;/h2&gt;

&lt;p&gt;Once you’ve understood the basics, the best way to move forward is by applying what you’ve learned in a small personal project. &lt;strong&gt;Think something fun and simple:&lt;/strong&gt; maybe analyse your daily screen time, look into your city’s weather data, or visualise your Spotify playlists. &lt;strong&gt;It doesn’t have to be a groundbreaking idea. It just has to be real and yours.&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;My first project was a budget tracker using Google Sheets and Python. It barely worked, but I still count it as a win.&lt;/p&gt;

&lt;p&gt;That one project taught me more than hours of watching tutorials. &lt;strong&gt;When you work with real data, you run into real-world messiness, including missing values, weird formatting, or bugs that just won’t go away.&lt;/strong&gt; Those are the moments where you grow fastest. &lt;strong&gt;Plus, it gives you something to share, talk about in interviews, and build on later.&lt;/strong&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  3. &lt;strong&gt;Share Your Work Even If It’s Not Perfect&lt;/strong&gt;
&lt;/h2&gt;

&lt;p&gt;This is the scary part for most people, especially if you’re early in your journey: &lt;strong&gt;putting your work out there.&lt;/strong&gt; I totally get it. I sat on my first project for two weeks before I posted it on LinkedIn because I was afraid of looking “junior” or getting judged. But here’s the thing: &lt;strong&gt;nobody expects you to be perfect.&lt;/strong&gt; What people notice is that you’re doing the work and sharing your progress.&lt;/p&gt;

&lt;p&gt;A simple post with a screenshot, short description, and maybe a GitHub link is more than enough. Something like, &lt;em&gt;“Just finished analysing my sleep data in Python! Learned a lot about cleaning timestamps and using Matplotlib for charts. Here’s what it looks like…”&lt;/em&gt; &lt;/p&gt;

&lt;p&gt;That’s it. &lt;strong&gt;People appreciate honesty and effort.&lt;/strong&gt; And showing up online consistently (even if it’s small) helps you &lt;strong&gt;build visibility, confidence, and maybe even land your first gig faster than you’d think.&lt;/strong&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  4. &lt;strong&gt;Join a Remote Learning Community&lt;/strong&gt;
&lt;/h2&gt;

&lt;p&gt;&lt;strong&gt;Learning at home doesn’t mean learning alone.&lt;/strong&gt; There are tons of online communities where beginner data folks hang out, ask questions, and support each other. You can find them on &lt;strong&gt;Reddit (like r/learnpython), in Slack or Discord groups, and even through bootcamps or free events.&lt;/strong&gt; I started out by just lurking in a Slack group, but eventually joined a weekend project challenge and that’s where I met a mentor who helped me tighten up my resume.&lt;/p&gt;

&lt;p&gt;You don’t have to network in the corporate LinkedIn sense. &lt;strong&gt;Just be curious.&lt;/strong&gt; Ask questions, comment on someone else’s post, or share a resource that helped you. &lt;strong&gt;These casual interactions often lead to deeper connections.&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;They also remind you that you're not the only one learning late at night, Googling error messages. &lt;strong&gt;Community keeps you motivated and gives you people to lean on when you hit a wall (and you will hit a few).&lt;/strong&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  5. &lt;strong&gt;Apply to Remote Data Science Internships or Small Projects&lt;/strong&gt;
&lt;/h2&gt;

&lt;p&gt;You don’t need a traditional full-time job to get started. &lt;strong&gt;Remote internships, freelance projects, and short-term gigs&lt;/strong&gt; are perfect ways to gain experience and learn on the job. Sites like &lt;a href="http://simplify.jobs" rel="noopener noreferrer"&gt;Simplify.jobs&lt;/a&gt;, AngelList Talent (now &lt;a href="https://wellfound.com/" rel="noopener noreferrer"&gt;Wellfound&lt;/a&gt;), &lt;a href="http://hired.com" rel="noopener noreferrer"&gt;Hired.com&lt;/a&gt;, and &lt;a href="https://www.reddit.com/r/jobs/" rel="noopener noreferrer"&gt;r/jobs&lt;/a&gt; occasionally post data-related work. You could also cold-message nonprofits or small businesses offering to help them clean up or visualise their data. &lt;strong&gt;A lot of them need help. They just haven’t advertised it yet.&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;My first real experience came through a paid remote data science internship through &lt;a href="https://capital-placement.com/internships/remote-data-science-internships/" rel="noopener noreferrer"&gt;Capital Placement&lt;/a&gt;. I cleaned up a messy survey dataset using Python, ran some basic analysis with Pandas and Seaborn to spot patterns, and then pulled everything into a simple Google Data Studio dashboard that the company could use the insights in their day-to-day work.. &lt;strong&gt;Did it teach me more in eight weeks than all my courses combined? Absolutely.&lt;/strong&gt; Getting something on your resume, even a small project, is a game-changer. &lt;strong&gt;It gives you talking points, confidence, and proof that you can deliver.&lt;/strong&gt; Apply even if you don’t feel ready. &lt;strong&gt;Show your projects, be honest about your skills, and focus on learning.&lt;/strong&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  &lt;strong&gt;Final Thoughts&lt;/strong&gt;
&lt;/h2&gt;

&lt;p&gt;&lt;strong&gt;Breaking into a data career from home is possible&lt;/strong&gt;, even if you don’t have a tech background, a brand-name degree, or a perfect setup. What you do need is a bit of &lt;strong&gt;consistency, a little courage, and a willingness to keep going when things get hard.&lt;/strong&gt; You’re going to mess up. You’re going to feel behind. But if you &lt;strong&gt;keep learning, building, and sharing&lt;/strong&gt;, you will get somewhere.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Start with what you have. Build one thing. Share it. Learn in public.&lt;/strong&gt; You don’t need permission to begin, and you don’t need to leave your home to launch your career.&lt;/p&gt;

</description>
      <category>datascience</category>
      <category>internships</category>
      <category>data</category>
    </item>
    <item>
      <title>From Scaler Academy to Cyware Labs - Scaler Academy Review by Saurav Gupta, SDE @Cyware</title>
      <dc:creator>Sumeet M</dc:creator>
      <pubDate>Sat, 09 May 2020 14:15:43 +0000</pubDate>
      <link>https://dev.to/scaleracademy/from-scaler-academy-to-cyware-labs-scaler-academy-review-by-saurav-gupta-sde-cyware-2l1j</link>
      <guid>https://dev.to/scaleracademy/from-scaler-academy-to-cyware-labs-scaler-academy-review-by-saurav-gupta-sde-cyware-2l1j</guid>
      <description>&lt;p&gt;&lt;em&gt;It's very rightly said , "The universe loves a Stubborn heart."&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;Irrespective of the extremely humble backgrounds, Our Scaler Saurav Gupta, honestly is the ambassador of the vision with which we started Scaler Academy. You have to believe in your goals, work towards them, Grow 1% everyday" &lt;/p&gt;

&lt;p&gt;Presenting the journey of Scaler Saurav Gupta, in his own words: &lt;/p&gt;

&lt;p&gt;&lt;strong&gt;My Background:&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;"I come from humble backgrounds. My parents run a vegetable/general store shop, and I have two elder brothers. But I am the only fortunate one in the family whom my parents could afford to send to college. My family has supported me a lot over the years. Almost 80% of our family income was spent on paying fees for my graduation. I studied in a government primary school until I was in 5th. Since I was a good student, I sat for an exam by Navodaya Vidyalaya Samiti that was giving a scholarship. Almost ~5k students appeared for the entrance exam of the school, and only 80 were selected, and I was able to clear it. I studied with them from 6th till I passed out and that was a big-big help to my family financially. Jawahar Navodaya Vidyalaya hunts for talented children from rural and urban areas and offers them free education with no extra expenses irrespective of the financial condition of candidates whether rich or poor. I was awarded this opportunity at a younger age. I worked very hard in school and eventually joined Lovely Professional University to do engineering. I was in two minds at that time if I should go to Kota to study more and attempt to crack IIT or should I go to a private university and continue education without a break. My Navodaya’s computer teacher(Mr. Amit Kumar) advised that a private university would only help me if I could stay among the top students there. I decided to join LPU and have ensured that I remain at the top. I have been working hard to realize my dreams, and I am 2 times Roll of honor awarded by a worthy chancellor for my academic excellence.&lt;/p&gt;

&lt;p&gt;Initially, I wasn’t even sure which branch would be best for me, so I ended up choosing mechanical, but I switched to Computer Science soon after. I realized that coding was something that excited me, creating something new made me happy. Which is why I decided to pursue Scaler Academy, not only were they going to help me get referrals at companies that offered much better packages but also helped me better my programming skills.&lt;/p&gt;

&lt;h2&gt;
  
  
  My Scaler Academy Review :
&lt;/h2&gt;

&lt;ol&gt;
&lt;li&gt;The instructors and lecturers were very knowledgeable and kept us engaged - bettering our understanding of the concepts while also motivating us to keep practicing. It was kind of an ecosystem that kept me on my toes. &lt;/li&gt;
&lt;li&gt;In most of the colleges, the situation is not very good. The books and teaching methods have not been updated - we are just securing marks without a genuine understanding or application of the concepts. In Scaler, I was able to interact with people who like me wanted to achieve something and were genuinely interested in studying. &lt;/li&gt;
&lt;li&gt;The team kept tabs on our performance and submissions, which helps us stay on track. &lt;/li&gt;
&lt;li&gt;The hackathon was one of my favorite experiences. It was very nice to use all the learning I had accumulated and apply it to create something meaningful alongside fellow students who were equally motivated if not more.&lt;/li&gt;
&lt;li&gt;Another big way that InterviewBit’s Scaler Academy was able to help me was that they don’t charge upfront for the course. &lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;&lt;em&gt;It not only built a trust about the brand in my head but also gave me confidence because they believed so strongly in my capabilities. In between, I felt I was not getting enough referrals, and I reached out to Abhimanyu and Anshuman Sir. He was very approachable and helpful; he guided me very well and made me realised we are all part of the Scaler community.&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;My experience has been overall, Excellent to say the least. I am very thankful to them for helping me get a job that is paying me so well. I will be able to give back to my family and support them the way they did all my life. &lt;/p&gt;

&lt;p&gt;I am equally thankful to my family members (Bhaiya and Papa), my Navodaya pariwar and LPU for preparing me to make an impactful change in society by bringing an engineer from myself."&lt;/p&gt;

</description>
      <category>scaleracademy</category>
      <category>career</category>
      <category>codenewbie</category>
    </item>
    <item>
      <title>Review of Scaler Academy (InterviewBit Academy) by Nipun Suradkar</title>
      <dc:creator>Sumeet M</dc:creator>
      <pubDate>Fri, 08 May 2020 15:18:21 +0000</pubDate>
      <link>https://dev.to/scaleracademy/review-of-scaler-academy-by-nipun-suradkar-2nb7</link>
      <guid>https://dev.to/scaleracademy/review-of-scaler-academy-by-nipun-suradkar-2nb7</guid>
      <description>&lt;p&gt;We are delighted to bring to you the journey of our Scaler "Nipun Suradkar" who is an amazing example of "When talent meets hard work, anything is Achievable". Presenting his journey in his own words: &lt;/p&gt;

&lt;h3&gt;
  
  
  My background:
&lt;/h3&gt;

&lt;p&gt;"I was born in Ulhasnagar in Thane district - Maharashtra and I did school and college from the same city. In school, I was a bright student, always securing above-average marks. One of my school seniors joined IIT, and his life suddenly took a turn for the better. Which motivated me also to pursue engineering. I was always into technology and this news aligned with my dreams and aspirations. However, up until 10th, most of us can secure good marks by the rote learning techniques and the stuff we study in 11th, and 12th really can’t be learned with that. I worked on genuinely understanding each and every concept to do well. Although I tried really hard and studied a lot, I was not able to crack IIT. I didn’t get disheartened and decided to make something of myself within my current circumstances. I joined VJTI college and started working towards achieving my dreams.&lt;/p&gt;

&lt;p&gt;In school, I found electronics interesting, and I decided to choose that as my major in college with IT and Computer Science as elective. But after the 3rd Semester, I realised that electronics was not something I would want to pursue in the long term. I was more inclined towards IT and computer science. I searched online and found some detailed posts on Quora that helped me understand that I could learn coding on my own and pursue that once I finish my college degree. So I set on to do that. I did a basic C++ course and started practicing on InterviewBit. This conflict of interest between my interest and the branch I had chosen impacted my GPA as well as the college placement process. In some companies, I wasn’t eligible because of my GPA and for some because my chosen subjects did not align with their requirements. But I was not going to give up. I took whichever job I could find from college and alongside continued to study coding.&lt;/p&gt;

&lt;p&gt;I was still using InterviewBit to practice coding when I got an email from Anshuman Sir about Scaler Academy (previously InterviewBit Academy). It was exactly what I needed. It would help me not only learn the requisite skills but also help with the referrals to jobs that I actually wanted to do. I applied for the first batch in April 2019, I couldn’t clear it. This was the time I was studying for my semester end exams as well as preparing for the entrance exam for Scaler Academy. I worked really hard and was able to clear both. I joined in May and the next 6 months at the program were beneficial to me. &lt;/p&gt;

&lt;h2&gt;
  
  
  My Review of Scaler Academy (InterviewBit Academy) :
&lt;/h2&gt;

&lt;p&gt;My experience with them has been great, they helped me a lot to understand the different concepts and the application of them. In fact, although I have only been working for 6 months in the company that I got placed with from college, I got a job as a Web Developer 2 in Media.net. &lt;/p&gt;

&lt;p&gt;They were quite happy with my performance during the recruitment process. They considered me on par with someone with 1.5 years of experience. I was able to build this kind of knowledge and understanding with help from the team at InterviewBit’s Scaler Academy. During my recruitment process with Media.net, Abhimanyu Sir guided me and helped me make the decision to join them. I am delighted with my experience here and have already recommended it to some of my friends who are currently preparing for their entrance exam. "&lt;/p&gt;

&lt;p&gt;Read more stories &lt;a href="https://www.scaler.com/reviews/" rel="noopener noreferrer"&gt;here&lt;/a&gt; and on &lt;a href="https://www.quora.com/What-is-your-review-of-Scaler-Academy" rel="noopener noreferrer"&gt;Quora&lt;/a&gt;.&lt;/p&gt;

</description>
      <category>scaleracademy</category>
      <category>career</category>
      <category>interviewbitacademy</category>
    </item>
    <item>
      <title>What do top tech companies (Google - Amazon - Facebook) seek when hiring?</title>
      <dc:creator>Sumeet M</dc:creator>
      <pubDate>Tue, 31 Mar 2020 07:52:58 +0000</pubDate>
      <link>https://dev.to/scaleracademy/what-do-top-tech-companies-google-amazon-facebook-seek-when-hiring-498j</link>
      <guid>https://dev.to/scaleracademy/what-do-top-tech-companies-google-amazon-facebook-seek-when-hiring-498j</guid>
      <description>&lt;p&gt;Data Structure and Data Algorithm are two of the most common topics that hiring experts in the domain of software engineering tend to focus on. Despite their popularity in varied recruitment processes, both these topics are quite misunderstood and usually come with many complexities in the application, especially in a tense set up of a job interview.&lt;/p&gt;

&lt;p&gt;What can make the lives of aspiring software professionals easy is an insight into the minds of the interviewer sitting opposite to them. While this may differ from person to person depending on their personalities, backgrounds and work experience, one can create and follow some basic guidelines while approaching the problems posed around these two themes by the interviewer.&lt;/p&gt;

&lt;p&gt;&lt;iframe width="710" height="399" src="https://www.youtube.com/embed/DPGXJ3PNaDc"&gt;
&lt;/iframe&gt;
&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;
&lt;strong&gt;Measure Twice cut once&lt;/strong&gt; - Most technology companies are looking for people who have the patience and intellect to analyse the problem at hand thoroughly before jumping into providing a solution. Many times, especially in the interview, the candidate ends up either solving the wrong problem or creating a half baked solution without actually understanding the problem at hand. Therefore, one must converse with the interviewer and get a full understanding of the corner cases of the question posed. The vital thing to note here is that several organisations have training sessions for interviewers as well in which they are specifically instructed not to offer all the boundary conditions of the problem shared upfront. The question is purposely left a little vague, and the interviewer expects the candidate to ask clarifying questions. Be mindful of this. Ask as many questions as required and only then suggest a well thought over solution.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Think loudly and collaborate&lt;/strong&gt; - One of the most common mistakes that most young professionals do is that once they have heard a question/problem from the interviewer, they tend to become silent. Maybe even stare at the wall or ceiling, understandably lost in thought - analysing the problem. It seems like the right approach, but it is not. What we tend to forget is that the interviewer wants to understand the thought process behind the solution suggested. They want to understand how the person approaches a given situation or issue. The ideal way is to discuss the process with the interviewer. Share the different approaches that could be used, what could be the pitfalls of each of them, how would one go about handling those, and so on. When one is silently thinking about a problem, the interviewer could deduce that the candidate is stuck or lacks clarity. It is therefore essential to engage with the interviewer through the entire problem-solving process.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Do not jump into writing the code directly &lt;/strong&gt;- The quality of the code written during the interview is very critical. There is no point in writing something basic and then adding patches to it as one gets a better understanding of the corner cases of the problem. This method is rudimentary and does not reflect well on the candidate resulting in eventual rejection. Systematic structuring of the code is essential. The ideal approach should be first to figure the solution and then write the code corresponding to that. In this step also, collaborating with the interviewer is critical. Get his or her buy in on the solution suggested by getting requisite clarity and then proceed to write the code.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Dry run and identify corner cases&lt;/strong&gt; - Dry running the code is imperative. There are no two ways around it. Every single technology organisation only wants to work with engineers whose codes do not fail on deployment or production. So before one goes ahead and submits the code, test it extensively on all the corner cases that one can think off. Being thorough is the key here.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Ask sensible and smart questions&lt;/strong&gt; - Most interviewers towards the end of the interaction tend to ask if the candidates have any questions for them. The worst response for such a query is - no questions. Thoroughly research on the company and the work they do, to ensure that such a situation does not arise. This is an excellent opportunity for the candidate to build a rapport with the interviewer, ask them questions on what kind of tech or protocol they use for a particular feature or product. The candidate can also ask questions on work culture within the team - how they brainstorm and come up with new ideas, will he or she get the chance to take product decisions or be part of the discussion where such decisions are made. It is important to note that asking questions around working hours or salary should be avoided in technical interviews.&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;These tips and tricks are simple and easy to implement. In hindsight, they may even seem obvious, but a lot of aspiring software professionals tend to overlook them. Almost 90% of rejections in the technical round happen because the candidate is lacking in one (if not more) of these aspects. They go a long way in creating a favorable impression of the candidate in the mind of the interviewer.&lt;/p&gt;

</description>
      <category>techtalks</category>
      <category>career</category>
      <category>computerscience</category>
    </item>
    <item>
      <title>Avoid these 5 common coding interview mistakes</title>
      <dc:creator>Sumeet M</dc:creator>
      <pubDate>Thu, 05 Mar 2020 08:59:53 +0000</pubDate>
      <link>https://dev.to/_sumeetm/avoid-these-5-common-coding-interview-mistakes-4167</link>
      <guid>https://dev.to/_sumeetm/avoid-these-5-common-coding-interview-mistakes-4167</guid>
      <description>&lt;p&gt;Over 90% of people make these 5 common coding interview mistakes that reduces their chance of getting hired at top tech company.&lt;/p&gt;

&lt;p&gt;In this video, you will learn how to avoid these mistakes and succeed at getting job offers from top tech companies like Google, Amazon or Microsoft.﻿&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;So you can master those things&lt;/li&gt;
&lt;li&gt;You can avoid the most common pitfalls that people make in such interviews.&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;&lt;iframe width="710" height="399" src="https://www.youtube.com/embed/DPGXJ3PNaDc"&gt;
&lt;/iframe&gt;
&lt;/p&gt;

</description>
      <category>java</category>
      <category>tutorial</category>
      <category>career</category>
      <category>computerscience</category>
    </item>
    <item>
      <title>Merge Sort in C</title>
      <dc:creator>Sumeet M</dc:creator>
      <pubDate>Fri, 22 Feb 2019 11:25:22 +0000</pubDate>
      <link>https://dev.to/_sumeetm/merge-sort-in-c-22ka</link>
      <guid>https://dev.to/_sumeetm/merge-sort-in-c-22ka</guid>
      <description>&lt;p&gt;&lt;a href="https://www.interviewbit.com/tutorial/merge-sort-algorithm/" rel="noopener noreferrer"&gt;Merge Sort&lt;/a&gt; is a Divide and Conquer algorithm which sorts given set of elements recursively. &lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fvw63si3q72caugwc2pml.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fvw63si3q72caugwc2pml.png" alt="Merge Sort" width="800" height="615"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Pseudocode of merge sort can be written as follows:
&lt;/h2&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;//A-&amp;gt;array, l-&amp;gt;left most index, r-&amp;gt;right most index
MERGE-SORT(A, l, r)//function named “MERGE-SORT” to sort the array “A”, with the lower bound “l” and upper bound “r” and splits the array later into two parts.
    if  l &amp;lt; r
        mid = (l+(r-l)/2)
    MERGE-SORT(A, l, mid)// Function call keeps on splitting the left part of the array till single element is achieved.

    MERGE-SORT (A, mid+1, r)// Function call keeps on splitting the right part of the array till single element is achieved..

    MERGE(A, l, mid ,r)
end func

MERGE(A, l, mid, r)
    nL = mid-l+1 //nL tells the max number of elements in the array L
    nR = r-mid //nR tells the max number of elements in the array R
    Create arrays L[1..nL+1] and R[1..nR+1]
    for  i=0 to nL-1
        L[i] = A[l+i]
   end for
    for j=0 to nR-1 // adds elements to the initial array A
        R[j] = A[m+l+j]
    end for

    i=0;  j=0;  k=l;
    while  i &amp;lt; nL and j &amp;lt; nR  // adds elements to the initial array A
        if  L[i] &amp;lt;= R[j]
            A[k]=L[i];  i=i+1;  k=k+1;
        else
            A[k]=R[j];  j=j+1;  k=k+1;
    end while

    while  i &amp;lt; nL  // adds elements to the initial array A
        A[k]=L[i];  i=i+1;  k=k+1;
    end while

    while  j &amp;lt; nR  // adds elements to the initial array A
        A[k]=R[j];  j=j+1;  k=k+1;
    end while
end func

&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Merge Sort Explained:&lt;/p&gt;

&lt;p&gt;&lt;iframe width="710" height="399" src="https://www.youtube.com/embed/uOjJPtVA24k"&gt;
&lt;/iframe&gt;
&lt;/p&gt;

&lt;h2&gt;
  
  
  C program for Merge Sort
&lt;/h2&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;#include&amp;lt;stdlib.h&amp;gt; 
#include&amp;lt;stdio.h&amp;gt; 

// Merges two subarrays of arr[ ]. 
// First subarray is arr[l..m] 
// Second subarray is arr[m+1..r] 
void merge(int arr[ ], int l, int m, int r) 
{ 
    int i, j, k; 
    int n1 = m - l + 1; 
    int n2 = r - m; 

    /* create temp arrays */
    int L[n1], R[n2]; 

    /* Copy data to temp arrays L[ ] and R[ ] */
    for (i = 0; i &amp;lt; n1; i++) 
        L[i] = arr[l + i]; 
    for (j = 0; j &amp;lt; n2; j++) 
        R[j] = arr[m + 1+ j]; 

    /* Merge the temp arrays back into arr[l..r]*/
    i = 0; // Initial index of first subarray 
    j = 0; // Initial index of second subarray 
    k = l; // Initial index of merged subarray 
    while (i &amp;lt; n1 &amp;amp;&amp;amp; j &amp;lt; n2) 
    { 
        if (L[i] &amp;lt;= R[j]) 
        { 
            arr[k] = L[i]; 
            i++; 
        } 
        else
        { 
            arr[k] = R[j]; 
            j++; 
        } 
        k++; 
    } 

    /* Copy the remaining elements of L[], if there 
    are any */
    while (i &amp;lt; n1) 
    { 
        arr[k] = L[i]; 
        i++; 
        k++; 
    } 

    /* Copy the remaining elements of R[], if there 
    are any */
    while (j &amp;lt; n2) 
    { 
        arr[k] = R[j]; 
        j++; 
        k++; 
    } 
} 

/* l is for left index and r is right index of the 
sub-array of arr to be sorted */
void mergeSort(int arr[], int l, int r) 
{ 
    if (l &amp;lt; r) 
    { 
        // Same as (l+r)/2, but avoids overflow for 
        // large l and h 
        int m = l+(r-l)/2; 

        // Sort first and second halves 
        mergeSort(arr, l, m); 
        mergeSort(arr, m+1, r); 

        merge(arr, l, m, r); 
    } 
} 

/* UTILITY FUNCTIONS */
/* Function to print an array */
void printArray(int A[ ], int size) 
{ 
    int i; 
    for (i=0; i &amp;lt; size; i++) 
        printf("%d ", A[i]); 
    printf("\n"); 
} 

/* Driver program to test above functions */
int main() 
{ 
    int arr[] = {12, 11, 13, 5, 6, 7}; 
// or you can take input direct from the user itself using scanf function
    int arr_size = sizeof(arr)/sizeof(arr[0]); 

    printf("Given array is \n"); 
    printArray(arr, arr_size); 

    mergeSort(arr, 0, arr_size - 1); 

    printf("\nSorted array is \n"); 
    printArray(arr, arr_size); 
    return 0; 
} 
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



</description>
      <category>mergesort</category>
      <category>c</category>
      <category>computerscience</category>
      <category>tutorial</category>
    </item>
  </channel>
</rss>
