Sign in to follow this  
Reggi

Improving problem solving skills

Recommended Posts

I've been interested in programming and game development for a year or two now but I only started to take it seriously recently. I have a friend who used to program vigorously when he was younger. When I ask him a question on how a certain feature of C++ works such as pointers, he tells me I'm getting ahead of myself and before I learn how to use such features I should learn how to solve problems instead. Such as the problems shown in the ACSL competition http://www.acsl.org/samples.htm How would I improve my skill in solving problems such as those?

Share this post


Link to post
Share on other sites
If you have a question, you can ask in Gamedev's community chatroom. Or you can ask it here. [smile]

Quote:
Original post by Reggi
When I ask him a question on how a certain feature of C++ works such as pointers, he tells me I'm getting ahead of myself and before I learn how to use such features I should learn how to solve problems instead.


My question is, who's to decide you're "getting ahead of yourself"? You, or your friend?

That aside, you can try out some of the simpler exercises on wikibooks.

Share this post


Link to post
Share on other sites
Quote:
Original post by Reggi
I'm still interested in improving my skill in solving problems.


Algorithm design is like math. While it's possible to guesstimate 2+5 or 3*2, some fundamental rules have been laid down as to how every such equation is solved.

Programming competitions require knowledge of fundamental algorithms and data structures. Then it's just a matter of correctly identifying the problem, and applying a certain technique.

You can start by looking at list of algorithms. These cover the fundamentals (anyone studying CS is expected to be fully familiar with majority of them). Second part are data structures. While full knowledge of these isn't required, it's incredibly helpful for solving competitions.

It really comes down to this. Someone who wants to be a writer needs to become familiar with grammar and spelling, as well as different styles. An painter needs to be familiar with various techniques, styles as well as how to use a brush. Same for mathematician, physicist, doctor, etc....

Then, comes practice.... Years and years....

Share this post


Link to post
Share on other sites
project euler has a nice list of problems that start out very simple but become much harder in the end. You kind of need to know how to program in some language to do them, and I suggest learning Python, for project euler and for game development. :)

EDIT: Oh and I forgot to mention, you improve by practising, like with anything else.

Share this post


Link to post
Share on other sites
Quote:
Original post by tufflax
EDIT: Oh and I forgot to mention, you improve by practising, like with anything else.

Exactly. I was going to suggest the Brain Age games from Nintendo, and the Professor Layton games too. Sudoku and crosswords. The Kick In The Seat Of The Pants books and cards by I forget his name, just Google it.

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

Sign in to follow this