Блог пользователя Zy.Chen

Автор Zy.Chen, история, 4 месяца назад, По-английски

How to learn and memorize algorithms efficiently? I always feel that I have read some algorithms several times but still haven't memorized them. Many algorithms I learned a year ago, I can't write them right now.

Can someone provide an effective method to learn and memorize algorithms? Thanks.

  • Проголосовать: нравится
  • +5
  • Проголосовать: не нравится

»
4 месяца назад, скрыть # |
 
Проголосовать: нравится +6 Проголосовать: не нравится

I think if you go a whole year without implementing some algorithm, you're bound to forget it within that time.

»
4 месяца назад, скрыть # |
 
Проголосовать: нравится 0 Проголосовать: не нравится

In terms of learning/memorizing, it can help to check if you actually understand the algorithm by writing your own version/writing it in a way that you understand every step. Dissect the algorithm and probe for gaps in your understanding.

Generally, the most effective method of remembering these algorithms for extended periods of time is to periodically use them and refresh yourself on the underlying mechanics; as with most forms of knowledge, if you don't use it you lose it. There aren't really any shortcuts.

»
4 месяца назад, скрыть # |
 
Проголосовать: нравится +1 Проголосовать: не нравится

Thanks guys, I perhaps need to find some trick on memorizing things. :)

In fact, every algo has it's tricks. When preparing for comps, I need to cover every algos, and it's tricks too, so I might need a way to remember these tricks when I first met them...

»
4 месяца назад, скрыть # |
 
Проголосовать: нравится +7 Проголосовать: не нравится

The method I relied upon is to first fully understand how it works, and then using a flash cards application with some problems on cses (that relies on implementing said algso). So when you draw a card, you can implement it, if you can sucessfully, you mark it as okay, if you needed to look back at the article about it, you mark it as wrong.