Что почитать об эффективном программировании/алгоритмике?

Что почитать об эффективном программировании/алгоритмике?

Я не профессиональный программист и не знаю ни одного "языка", но на досуге занимаюсь написанием небольшой ВН-ки. Вчера я пытался написать максимально упрощённую версию "21" для использования в качестве мини-игры и около часа тупил над условным ветвлением, пытаясь понять учёл ли я все возможные исходы игры (при том, что в игре, по сути две переменные). В итоге вспомнил о существовании else if и вместо вложенных условий использовал последовательный перебор, но задался двумя вопросами:

- Является ли это оптимальным вариантом и как разумно строить условное ветвление при большем количестве переменных?

- Почему я тупил над задачкой с двумя переменными целый час и как поумнеть?

В общем мне стало интересно есть ли какая-нибудь литература, популярно рассказывающая о логике построения алгоритмов для людей, в программировании не шарящих? Желательно на русском.

P.S. Если подскажете еще и некий аналог "Мышление для чайников" будет вообще здорово.

22
59 комментариев