as I am doing programming since oct’14 till now continuously…but now i feel not good after submitting almost 350 questions at codechef including practice and competition section…but i feel now I have not learned anything yet from those question because I have not selected questions appropriately…can anyone help me to select questions based on different kinds algorithms…and how to study algorithm and be a good programmer…please help me I am in great trouble as I spent too much time…
Systematic and sustained learning is the key.
Some things you must keep in your mind, dont see the solution of the problem untill you give up.
You should read algorithms one by one and then you should practice problems on that algorithm only(problems of varying difficulties).
Here are some link… where you will find various problems(easy to hard) on almost every algorithms.
Your profile speaks of your practice. Now what you should try is completing whole long challenge and short challenge questions. The problems which you are not able to solve in long challenge you must solve them after editorials are out as they are the only concepts which you need to learn. Practicing what you already know is worth no use. Summarising all facts you should not skip your weak parts that you feel when you pick a tough question according to your level. You can also have a look at this
After taking a brief look at your profile here is what I got - you are doing basically no upsolving, you aren’t practicing a lot, you aren’t solving any real problems requiring complicated algorithms.
It was already said in other comments in this topic. You have at least 3 ways to improve.
Actually it is ridiculous. Assuming CodeChef is your main training platform, you should have 8+ problems solved (including upsolving) in every long contest. Checked April Long - you have two there. You didn’t even upsolved tasks with 5-lines long solutions (like PIANO1). That does not look like an intense practice; that looks completely opposite.
So here is a simple rule for you - you have to upsolve all tasks which are required for top10 in every CodeChef contest. With time it will cover most of key topics for you in a natural way
@lebron due to semester exam i havnt spent much time for that long challenge…thats why I hav done only two then I have spent time for june challenge…can u tell how to do upsolves??
CodeChef provides editorials for all (or at least most) problems (sometimes with some delay, but you don’t hurry anyway); also you have access to solutions from other users. So you have everything you need to solve a task.
Although I am not the best person to answer your query but if you are looking for algorithms then you must refer this link. http://discuss.codechef.com/questions/48877/data-structures-and-algorithms
I would also suggest you reading from CLRS as according to me it would be best for you to understand an algorithm.
You are doing it from Oct 14, I am doing it from June 12, and I think that I have learnt a little from it, how to approach the problems. Still I am not comfortable with Trees and Graphs.
But I am trying my best to solve them like @Tourist.
Dont feel tired. Try and Try until you succeed. There is no other formula to get well.