Как соответствовать строке, но нечувствительно к регистру?

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

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

19
задан Mawg 7 June 2017 в 12:39
поделиться