Эффективный способ написания алгоритма - PullRequest
1 голос
/ 14 декабря 2010

Мне было интересно, когда кто-то просит вас решить алгоритмическую проблему, это хороший способ начать с Hastable, Hashset или HashMap. Обычно я слышал, как люди говорили, что вы не должны предлагать хэши в качестве первого ответа.

Итак, как нам поступить в алгоритмах: на месте следует уделить внимание или убедиться, что сложность времени лучше

Я не пытаюсь обобщать, но все же некоторые предложения будут полезны.

Спасибо

Ответы [ 2 ]

3 голосов
/ 14 декабря 2010

Лучшее, на что вы можете надеяться, это обобщенный ответ на ваш обобщенный вопрос.

Это зависит.

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

Если кто-то попросит меня решить алгоритмическую проблему, я, вероятно, попробую использовать что-то, встроенное в язык, который я использую, прежде чем разрабатыватьмой собственный алгоритм.Причина в том, что я ценю свое время.Если позже я обнаружу, что код недостаточно эффективен, я могу найти лучший способ сделать это.

1 голос
/ 14 декабря 2010

Я думаю, что это действительно ситуативно. Если произвольный доступ является приоритетом и вам нужен быстрый доступ и небольшие ограничения на использование памяти и отсутствие последовательного доступа, тогда Hashtable (и др.) - это выбор.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...