Как работает IndexOf в C#?

Кто знает по какому алгоритму поиска работает IndexOf в C#? Где об этом можно почитать или может можно увидеть исходники метода IndexOf в C#?
  • Вопрос задан
  • 10692 просмотра
Пригласить эксперта
Ответы на вопрос 6
SychevIgor
@SychevIgor
.net доступен в исходных кодах. Можно погуглить и открыть.
Ответ написан
Комментировать
@Seter17
не подходит?

иначе reflector вам в помощь
Ответ написан
Комментировать
taliban
@taliban
php программист
По мне так это простейший алгоритм, так как строки ни сортированы, и никак не связаны. В сортированных/связанных масивах все по другому думаю, там уже в зависимости от структуры метод переопределен скорее всего.
function indexOf(neededChar)
{
    for( q = 0; q < string.length; q++ )
    {
        if( string[q] === neededChar )
        {
            return q;
        }
    }
    return -1;
}
Ответ написан
Комментировать
@tac Автор вопроса
Ответ написан
Комментировать
@tac Автор вопроса
Кстати разница между

Index = Str.IndexOf(FindString, Index);
и
Index = Str.IndexOf(FindString, Index, StringComparison.Ordinal);

действительна существенна на частной задаче как 14.20 минут против 8.20, и судя по статье там уже есть полная оптимизация
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы