5 algorithms a programmer must know

5 algorithms a programmer must know
Today I'm going to share with you all, the basic and reportedly important algorithms a programmer must know. Algorithms are important in a programmer's coding life. In this article, I'll share some types algorithms and will also tell you why you should be learning those. This set of below listed algorithms are built keeping in mind their use in current competitive programming and development world. Here are the sets,

1. Sorting algorithms
Sorting refers to arranging the elements of an array or a set in either ascending or descending order. These sorting algorithms will be of some importance in this competitive world like if you are creating a application/software which has lists and if you want them to be displayed to the user in ascending/descending order(as per user's choice), you will need sorting.
I have included some of the easy and interesting sorting algorithms below along with their links for further study about them. [Learn them by clicking on them]
  1. Merge Sort
  2. Quick sort
  3. Bucket sort
  4. Heap sort
  5. Counting sort
If you want to have a look at all the sorting algorithms till date, visit here.


2. Search algorithms
Searching for an element or an object in a set. Consider these as important searching algorithms.
  • Binary search 
When you search for a name of song in a sorted list of songs, it performs binary search and string-matching to quickly return the results. Learn it here. 

  • Depth/Breadth first search(used in graph data structure)
These are the graph searching algorithms. Uses are,
  1. Used by search engines for web-crawling
  2. Used in artificial intelligence to build bots, for instance a chess bot
  3. Finding shortest path between two cities in a map and many other such applications.
Learn it here.


3. Dynamic Programming
This is a very powerful technique to solve a particular class of problems. It usually splits the problem into similar sub problems and solution for each sub problem is found out and then merged together to build the solution for the main problem.

Learn about this here.




4. String Matching and Parsing 
This involves finding a string pattern in the given text string. Some important algorithms for string matching are,
  1. Horspool algorithm
  2. KMP algorithm

5. Hashing
Hashing is the transformation of a string of characters into a shorter fixed-length value or key that actually represents the original string. Hashing is used to index and retrieve items in a database, because it is faster to find the item using the shorter hashed key than to find it using the original value. It is also used in many encryption algorithms.
Learn more here


These are some cool algorithms which is better for the programmer if known! Hope this helped you. 

    He is a simple passionate tech freak who himself is an engineering student at Canara Engineering college. He likes App Development, Web designing, Blogging, Youtubing, Debugging and also is a CodeGeek!

    Sharing is sexy!

    Related Articles

    2 comments

    Write comments
    tachjava
    AUTHOR
    6 December 2017 at 18:50 delete

    Hi,

    Useful article. Understood the concept. Thanks for sharing.

    Cheers,
    http://www.flowerbrackets.com/binary-search-program-java/

    Reply
    avatar
    tachjava
    AUTHOR
    27 March 2018 at 18:14 delete

    Great article!! Nice explanation on sorting algorithms with appropriate links. Thanks for sharing.

    Cheers,
    http://www.flowerbrackets.com/how-to-implement-quick-sort-in-java-program/

    Reply
    avatar

    Share your views about this article!