<?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>Forem: Thuy Vy Tran</title>
    <description>The latest articles on Forem by Thuy Vy Tran (@thuyvytran).</description>
    <link>https://forem.com/thuyvytran</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%2F662648%2Fff486b5f-8e9b-4873-b4c9-ed427d0a482e.JPG</url>
      <title>Forem: Thuy Vy Tran</title>
      <link>https://forem.com/thuyvytran</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://forem.com/feed/thuyvytran"/>
    <language>en</language>
    <item>
      <title>Top Five Ways to Learn Data Structures</title>
      <dc:creator>Thuy Vy Tran</dc:creator>
      <pubDate>Tue, 13 Jul 2021 21:17:56 +0000</pubDate>
      <link>https://forem.com/thuyvytran/top-five-ways-to-learn-data-structures-49bd</link>
      <guid>https://forem.com/thuyvytran/top-five-ways-to-learn-data-structures-49bd</guid>
      <description>&lt;p&gt;Data Structure is a notable class that many Computer Sciences majors take in university. Learning this topic helps improve the way you store, organize and collect data in a given software or program. Also, many companies use data structures in their interview questions. I will present my top five ways to learn data structure. &lt;/p&gt;

&lt;h1&gt;
  
  
  1. YouTube
&lt;/h1&gt;

&lt;p&gt;There are many different channels dedicated to teaching data structure. When I was taking Data Structure, the top two youtube channels I heavily depended on was &lt;a href="https://www.youtube.com/c/MichaelSambol/videos"&gt;Michael's Sambol channel&lt;/a&gt; and &lt;a href="https://www.youtube.com/user/mycodeschool/videos"&gt;mycodeschool channel&lt;/a&gt;. Sadly, both of the channels haven't been updated in years. But they are still useful to this day. &lt;/p&gt;

&lt;p&gt;Michael does a great job explaining many of the data structures in five or fewer minutes. Also, he goes over the summary of each topic in easy-to-understand details. When I was learning red-black trees, his channel helped me a lot. It's a great channel if you don't have a lot of time in your day to learn due to work or school.&lt;/p&gt;

&lt;p&gt;Mycodeschool has many videos focusing on the various topics in data structure. One of my favorite thing about the channel is when he writes out the algorithm to show you a step-by-step procedure of any particular data structure. Also, he has good drawings and annotates them for you to have a better understanding of what is going on.&lt;/p&gt;

&lt;h1&gt;
  
  
  2. GeeksForGeeks
&lt;/h1&gt;

&lt;p&gt;GeeksForGeeks have a &lt;a href="https://www.geeksforgeeks.org/data-structures/?ref=shm"&gt;data structure&lt;/a&gt; and &lt;a href="https://www.geeksforgeeks.org/fundamentals-of-algorithms/?ref=lbp"&gt;algorithms&lt;/a&gt; sections on their website. They go into great detail explaining how each data structure works. There are also pictures and videos attached to each article for better explanation.&lt;/p&gt;

&lt;p&gt;In each article, there is a difficulty level of how hard the concept is. As a beginner, this is beneficial because it gives you a clear idea of what you should be currently learning. You can also lookup questions of examples of how a particular data structure is used. They give an example of the data structure code in C++, Java, Python3, and C#. I like it a lot because of this implementation. &lt;/p&gt;

&lt;h1&gt;
  
  
  3. HackerRank
&lt;/h1&gt;

&lt;p&gt;&lt;a href="https://www.hackerrank.com/dashboard"&gt;HackerRank&lt;/a&gt; is one of the best websites for practicing implementing data structure. They give you problems based on the difficulty level you want (easy, medium, and hard). Plus, if you have a problem with a subtopic, like trees, you can select it under the subdomain. Then, you will only get problems with that particular topic. They have 8+ programming languages you can use to practice the problems. This website was recommended to me by a Computer Science master's student. &lt;/p&gt;

&lt;h1&gt;
  
  
  4. Coursera
&lt;/h1&gt;

&lt;p&gt;This &lt;a href="https://www.coursera.org/specializations/data-structures-algorithms#about"&gt;course&lt;/a&gt; from UC San Diego is very similar to what I learned when I took a data structure class. It takes eight months to complete the entire specialization. Also, there are a total of six courses within it. If you need a structured schedule to help learn data structure then this is the course for you.&lt;/p&gt;

&lt;h1&gt;
  
  
  5. Books
&lt;/h1&gt;

&lt;p&gt;Here are the two books that I find helpful in learning data structure. &lt;/p&gt;

&lt;p&gt;The first book I find helpful is &lt;a href="https://www.amazon.com/Cracking-Coding-Interview-Programming-Questions/dp/0984782850"&gt;Cracking the Coding Interview by Gayle McDowell&lt;/a&gt;. The book takes you through how a technical interview works. Also, the book outlines how each data structure works. After the explanation is done, there are problems in the book for you to practice. &lt;/p&gt;

&lt;p&gt;The second useful book is &lt;a href="https://www.amazon.com/Data-Structures-Problem-Solving-Using-ebook/dp/B004J4WPRO"&gt;Data Structures &amp;amp; Problem Solving Using Java 4th ed. by Mark Allen Weiss&lt;/a&gt;. When I took the class, this was the book used to explain data structure. Even you don't know how to program in Java, the explanation is good. Plus, I find the diagrams and codes given to be helpful with understanding the concept. &lt;/p&gt;

&lt;p&gt;Overall, learning data structure helps improve your skill as a programmer. You will be able to tackle difficult problems by implementing data structure. Enjoy, learning data structure! &lt;/p&gt;

</description>
      <category>computerscience</category>
      <category>algorithms</category>
      <category>datastructure</category>
    </item>
  </channel>
</rss>
