It really is a combination of good teacher and reading books, but I'd recommend you also trying to write nice and neat notes if you don't have the chance to find a good teacher anywhere near you. Just google topics online and take notes from them, with nice tables etc... it really helps with studying if you can visualise things.