<?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: Hiesenberg</title>
    <description>The latest articles on DEV Community by Hiesenberg (@lakkireddy9100).</description>
    <link>https://dev.to/lakkireddy9100</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%2F316591%2F95d372b3-f21f-46ee-9fd1-f61939cd3e5a.png</url>
      <title>DEV Community: Hiesenberg</title>
      <link>https://dev.to/lakkireddy9100</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/lakkireddy9100"/>
    <language>en</language>
    <item>
      <title>Recap the use of some Algorithms</title>
      <dc:creator>Hiesenberg</dc:creator>
      <pubDate>Tue, 04 Jan 2022 18:07:22 +0000</pubDate>
      <link>https://dev.to/lakkireddy9100/recap-the-use-of-some-algorithms-29j5</link>
      <guid>https://dev.to/lakkireddy9100/recap-the-use-of-some-algorithms-29j5</guid>
      <description>&lt;h2&gt;
  
  
  Binary Search Algorithm
&lt;/h2&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;
- Efficient algorithm for finding an item from a **sorted list**
 of items

- The time complexity of the binary search algorithm is O(log n)
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&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%2F08bh3eumtbno0mg7gr8b.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%2F08bh3eumtbno0mg7gr8b.png" alt="loading!!!" width="550" height="319"&gt;&lt;/a&gt;&lt;/p&gt;




&lt;h2&gt;
  
  
  Breadth First Search (BFS) Algorithm
&lt;/h2&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;- Breadth–first search (BFS) is an algorithm for traversing or searching tree or graph data structures.
- It uses a queue.
- The time complexity of BFS traversal is O(V + E), where V and E are the total number of vertices and edges in the graph.
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;






&lt;h2&gt;
  
  
  Depth First Search (DFS) Algorithm
&lt;/h2&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;- Depth–first search (DFS) is an algorithm for traversing or searching tree or graph data structures.
- It uses a stack.
- The time complexity of DFS traversal is O(V + E), where V and E are the total number of vertices and edges in the graph.
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;






&lt;h2&gt;
  
  
  Merge Sort Algorithm
&lt;/h2&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;- Merge sort is an efficient sorting algorithm that produces a stable sort, which means that if two elements have the same value, they hold the same relative position in the sorted sequence as they did in the input
- Merge sort is a Divide and Conquer algorithm
- The worst case time complexity of merge sort is O(n log(n))

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

&lt;/div&gt;






&lt;h2&gt;
  
  
  Quicksort Algorithm
&lt;/h2&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;
- Quicksort is an efficient in-place sorting algorithm, which usually performs about two to three times faster than merge sort and heapsort when implemented well.
- Time complexity of Quicksort is O(n log(n)).

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

&lt;/div&gt;






&lt;h2&gt;
  
  
  Kruskal’s Algorithm
&lt;/h2&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;
- Kruskal’s Minimum Spanning Tree algorithm, a greedy algorithm to find a minimum spanning tree for a connected weighted graph.
- Kruskal's algorithm's time complexity is O(E log V), V being the number of vertices

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

&lt;/div&gt;






&lt;h2&gt;
  
  
  Single-Source Shortest Path  VS
&lt;/h2&gt;

&lt;h2&gt;
  
  
  All-Pairs Shortest Path
&lt;/h2&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;
- The Single-Source Shortest Path (SSSP) problem consists of finding the shortest paths between a given vertex v and all other vertices in the graph.
- The All-Pairs Shortest Path(APSP) problem is the determination of the shortest graph distances between every pair of vertices in a given graph
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;






&lt;h2&gt;
  
  
  Floyd Warshall Algorithm
&lt;/h2&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;
- The Floyd Warshall Algorithm is for solving the All Pairs Shortest Path problem. The problem is to find shortest distances between every pair of vertices in a given edge weighted directed Graph.
- The Floyd-Warshall all-pairs shortest path runs in O(n^3) time.

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

&lt;/div&gt;






&lt;h2&gt;
  
  
  Dijkstra’s Algorithm
&lt;/h2&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;
- Dijkstra's algorithm is the iterative algorithmic process to provide us with the shortest path from one specific starting node to all other nodes of a graph

- Time Complexity of Dijkstra's Algorithm is O(V^2)
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;






&lt;h2&gt;
  
  
  Kadane’s Algorithm
&lt;/h2&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;
- Simply putting for writing a logic to find the sum of contiguous subarray  within a one-dimensional array of numbers that has the largest sum, we use Kadane’s Algorithm. 

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

&lt;/div&gt;






&lt;h2&gt;
  
  
  Lee Algorithm
&lt;/h2&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;
- The Lee algorithm is one possible solution for maze routing problems based on breadth-first search.

- It always gives an optimal solution, if one exists, but is slow and requires considerable memory
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;






&lt;h2&gt;
  
  
  Floyd’s Cycle Detection Algorithm
&lt;/h2&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;As the name it self states, Floyd's Cycle detection algorithm or Hair Tortoise algorithm is used to detect if there is a cycle in a linked list
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;






&lt;h2&gt;
  
  
  Union Find Algorithm
&lt;/h2&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;- Recap Dis Joint Data Structure.
- A union-find algorithm is an algorithm that performs two useful operations find and union.
- Find: Determine which subset a particular element is in.
- Union: Join two subsets into a single subset.
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;






&lt;h2&gt;
  
  
  KMP Algorithm
&lt;/h2&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;- The Knuth–Morris–Pratt string-searching algorithm (or KMP algorithm) searches for occurrences of a "word" W within a main "text string" S.

- It is a Pattern Matching Algorithm
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;






&lt;h2&gt;
  
  
  Sorting Algorithms
&lt;/h2&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;
- A Sorting Algorithm is used to rearrange a given array or list elements according to a comparison operator on the elements.

- Examples
      1. Insertion Sort Algorithm
      2. Selection Sort Algorithm
      3. Counting Sort Algorithm
      4. Heap Sort Algorithm ​

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

&lt;/div&gt;






&lt;h2&gt;
  
  
  Euclid’s Algorithm
&lt;/h2&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;
-  Efficient algorithm for computing the greatest common divisor (GCD)
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



</description>
    </item>
    <item>
      <title>My preparation to TCS Codevita</title>
      <dc:creator>Hiesenberg</dc:creator>
      <pubDate>Thu, 20 Aug 2020 14:42:16 +0000</pubDate>
      <link>https://dev.to/lakkireddy9100/my-preparation-to-tcs-codevita-1o09</link>
      <guid>https://dev.to/lakkireddy9100/my-preparation-to-tcs-codevita-1o09</guid>
      <description>&lt;h2&gt;
  
  
  What is TCS Codevita ?
&lt;/h2&gt;

&lt;p&gt;&lt;em&gt;TCS CodeVita, is a contest for engineering and science students to experience the joy of coding and to sharpen their programming skills through real-life computing practices. The contest also aims at identifying the talent, besides providing the student community, an opportunity to earn peer recognition.&lt;/em&gt;&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;TCS conducts a coding exam for coders to let out an showcase their programming skills across the globe.Codevita majorly fcuses on the problem-solving skills of the participant.&lt;/p&gt;
&lt;/blockquote&gt;




&lt;h2&gt;
  
  
  How do i even get to know that there is an exam like Codevita ?
&lt;/h2&gt;

&lt;p&gt;Tcs Campus commune is hectic active in promoting CODEVITA.I have received a mail from Campus Commune about Codevita and i got interested about the format of the exam and just googled about it.&lt;/p&gt;




&lt;blockquote&gt;
&lt;h2&gt;
  
  
  And Then..
&lt;/h2&gt;

&lt;p&gt;and then i just tried one of the past problems of codevita.&lt;br&gt;
I am able to solve the one question which is named as "NumberGame"&lt;br&gt;
and it's a little tricky but, when i learnt about the concept i thought it is easy.I get to know that is the first question in Codevita contest. And , the truth is&lt;br&gt;
&lt;br&gt;
&lt;code&gt;First questions in Codevita are said to be pretty easy and they don't involve any dynamic-programming stuff&lt;/code&gt;&lt;br&gt;
&lt;/p&gt;
&lt;/blockquote&gt;




&lt;h2&gt;
  
  
  How did I get my material for Codevita ?
&lt;/h2&gt;

&lt;p&gt;Firstly , there is nothing called &lt;strong&gt;MATERIAL&lt;/strong&gt; for codevita as far i know.But there are many platforms in which you can practice the previous problems of codevita and have a glance about the pattern of Codevita. Learning how to write basic syntaxes in programming languages we are comfortable with is always the basic prerequisite for the preparation of codevita.&lt;/p&gt;




&lt;blockquote&gt;
&lt;p&gt;&lt;br&gt;
&lt;code&gt;Geeks for Geeks have all the previous problems of Codevita&lt;/code&gt;&lt;br&gt;
&lt;/p&gt;

&lt;p&gt;I have started to solve the problems in Geeks for Geeks and i am stuck at a problem and searched for a related video of explanation and i get to know about EDYST.&lt;br&gt;
I have enrolled in edyst's Codevita programme.I have practised all the questions which are in the edyst platform.&lt;br&gt;
It gave me a basic idea of how to approach to questions which involves dynamic programming.&lt;br&gt;
I had no idea about how time complexity and space complexity works.After solving some questions i get to understand how BigO notations works and how space while execting the code is used efficiently.&lt;/p&gt;
&lt;/blockquote&gt;




&lt;h2&gt;
  
  
  Mocktests..
&lt;/h2&gt;

&lt;p&gt;Mocktests are conducted by codevita.&lt;br&gt;
&lt;/p&gt;

&lt;p&gt;&lt;code&gt;Mocktests conducted by codevita are very important and we also have an advantage of getting familiar with their platform and how it works.&lt;/code&gt;&lt;br&gt;
&lt;/p&gt;

</description>
    </item>
    <item>
      <title>Basic stuff in Problem solving</title>
      <dc:creator>Hiesenberg</dc:creator>
      <pubDate>Thu, 20 Aug 2020 03:41:42 +0000</pubDate>
      <link>https://dev.to/lakkireddy9100/commom-doubts-in-problem-solving-1ia6</link>
      <guid>https://dev.to/lakkireddy9100/commom-doubts-in-problem-solving-1ia6</guid>
      <description>&lt;h2&gt;
  
  
  Some popular Competitive challenge contests I know..
&lt;/h2&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;Tcs           - Codevita
Infosys       - HackWithInfy
GOLDMAN SACHS - GOLDMAN SACHS 
Google        - Google'sCode Jam
Google        - APAC
Facebook      - Hacker Cup
Microsoft     - Imagine Cup 
ACM           - ICPC
Codechef      - SnackDown
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;
&lt;h2&gt;
  
  
  and more..
&lt;/h2&gt;
&lt;h2&gt;
  
  
  Some useful topics...
&lt;/h2&gt;
&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt; °Greedy Algorithm
 °Stack
 °Queue
 °Mapping Concepts
 °Array manipulation
 °String manipulation
 °Tree
 °Dynamic Programming
 °BackTracking
 °Graph
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;

&lt;p&gt;In most cases divide and conquer works well.&lt;br&gt;
Every exam has its own pattern.&lt;/p&gt;

&lt;p&gt;For instance,in Tcs codevita, &lt;br&gt;
6 Coding questions will be asked and the difficulty increases as we move from question 1 to question 6 . 1st question does not involve any dynamic programming or difficult algorithm , but , will be on simple mathematics, and simple problem solving skills. It's well-known that &lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt; TCS hires its digital 
 candidates from Codevita.
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;

&lt;p&gt;FYI, Many got an interview opportunity for solving 2-3 questions &lt;/p&gt;




&lt;h2&gt;
  
  
  Which programming language is best for problem solving ?
&lt;/h2&gt;

&lt;p&gt;Every programming language has its own unique capabilities, features, services etc&lt;br&gt;
In any programming language we can solve the problems .&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;  Proceed using the 
  programming language in 
  which you are most 
  comfortable with.
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;




&lt;h2&gt;
  
  
  Usually...
&lt;/h2&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt; For beginners , python is 
 recommended in most cases.
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;

&lt;p&gt;Because,easy to Learn, Read, and Use .Unlike C++ or C#  or java and other languages, Python's syntax is human readable and it's concise. As a beginner, this will allow you pick up the basics quickly, with less mental strain, and you can level up to advanced topics quicker. With one glance at Python code, you can infer what the code is doing.&lt;/p&gt;

</description>
    </item>
  </channel>
</rss>
