Skip to main content

On Which Coding Platform Should I Practice?

Which is the best online platform to practice, how to improve my coding skills?

This post is all about giving answers to all such questions.

If you're a beginner who has got no idea what programming is then I would recommend you step by step practice any programming language on Hackerrank. Hackerrank has modules that are self-explanatory and would slowly make you understand all the terminologies which are generally used and with practice, you'll be better at it. Moreover, if you're still not able to understand anything you can always search for your answers on GeekForGeeks or HackerEarth both of them provide one of the best tutorials on any topic.

If you're an intermediate who's comfortable with any programming language then you can always improve your problem-solving skills studying Data Structures and Algorithms and practicing it. You can also improve by competitive coding.
The best place to start with competitive programming according to me would be Codechef /CSES.fi /LeetCode both of these platforms are quite user-friendly and have a range of problems starting from Beginner Level to Advanced Level. By participating in Contests in CodeChef you can improve your rating and can later use it in your resume. There are both short and long challenges initially I would recommend you to start with long challenges and once you are comfortable in problem-solving then you can always participate in Short Contests. CSES.fi has a good problem set where problems are arranged from easy to hard and thus one always gets better solving it. Leetcode has a database where you get to practice questions that are generally asked in the coding rounds of you many companies.

If you're someone who has pretty good knowledge of Data Structures and Algorithms moreover you're also able to solve problems easily or have bagged a place in Div.1 of Codechef then I would recommend you, proceed further with Codeforces/ Topcoder/ SPOJ/HackerEarth/AtCoder. In Codeforces you get short contests on an almost daily basis and you get to learn a lot from the editorials and tutorials. Try, to be as consistent as possible and you'll be able to make your place in Div.1 of Codeforces as well. Problems on HackerEarth/ TopCoder/ SPOJ/AtCoder
are application based and you get to know how to apply your logic/ concept in different problems.

"In all the platforms I mentioned above, you can always use specific tags for problems and practice more on things/ concepts you feel you require more time."

Leetcode and GeeksForGeeks will help you a lot if you want to build your fundamentals and discover problems that are mostly asked in the interviews.

If you're someone who is eagerly looking for placement opportunities as an SDE Intern or need to crack the coding round and Interviews then the following plans will be enough for you instead of discovering all the platforms,
1. GeeksForGeeks + Codeforces (A, B, and C : Problem Category) 
2. GeeksForGeeks + Leetcode 

You can always give a try on these platforms but everything depends upon the time you have left for your placements.
Always Remember Whatever You Do,
Wherever You Do,
 "JUST GIVE YOUR BEST SHOT..!!"

Links To All The Mentioned Platforms :
Hackerrank
Codechef
Codeforces
CSES
LeetCode
GeeksForGeeks
HackerEarth
SPOJ
TopCoder
AtCoder

Happy Coding!!!!

Comments

  1. As you told for biggeners prectic on gfg but gfg is very large platform.... Can you suggest me which section i shoud start!

    ReplyDelete
    Replies
    1. If you open GFG there's a section named tutorials just go through the various topics present there you can start with Programming Language, then Data Structures and then Algorithms

      Delete

Post a Comment

Your Feedback Will Help Us To Improve...

Most Popular Posts

Coding and Mathematics ( Importance Of Maths In Programming )

Everyone wants to become a good coder but only a few manage to achieve this you know why? BECAUSE everyone wants to code and no one really wants to be a good mathematician which is the basic requirement to be a coder, yet very few know this fact and try to be a  mathematician first than a coder. What exactly is coding? It is the process of solving different technical problems using a programming language. The technical problems can vary from printing a  simple "Hello World" program to solving "2 SAT Problem" using mathematics. You might today be able to solve a few problems using your technical skills but it would help you in the long run only if you're fundamentals of mathematics are also clear. By mathematics, I don't mean the whole of it but some important topics such as Discrete Math, Algebra, Number Theory, etc. Here are some concepts of mathematics that you will use mostly in solving the technical problems : Fundamentals B

How to Invert A Binary Tree (Iteratively + Recursively)?

Inverting a binary is one of the most common questions being asked these days. Often, seen many times in the ad of AlgoExpert as well. So, what is an inverted binary tree? Inverted binary tree is a simply a mirror image of given binary tree. Example : So, all we need to do is " Swapping left children with right children of a binary tree at every level." Implementation Recursively TreeNode* invertTree(TreeNode* root) { if(root==NULL) return NULL; swap(root->left,root->right); invertTree(root->left); invertTree(root->right); return root; } Iteratively TreeNode* invertTree(TreeNode* root) { if(root==NULL) return NULL; queue<TreeNode*> q; q.push(root); while(!q.empty()) { TreeNode* c= q.front(); q.pop(); swap(c->left,c->right); if(c->left!=NULL) q.push(c->left); if(c->right!=NULL) q.push(c->right); } return root; } I hope this tutorial hel