![]() |
проблема с буферами Part 3
есть два буфера нужно определить входит ли первый буфер в состав второго
что-то типа этого PHP код:
|
char *strstr(char *, char *)
Ищет первое вхождение одной строки в другой и возвращает указатель на него. А вообще почитай что-нибудь про стандартную библиотеку. MSDN тотже. |
2 izlesa
справдедиво лишь для буферов хранящих строки! Хотя все равно не понятно .... а сравнивать ли символы после 0x00. To do or not to do! What is the question! в общем же случае ... вычисляется хэш равный сумме малого буфера ХЭШ=Сумма(b[i]) .... вычислетя хэш "плавающего" фрагмента большого буфера ХЭШ2=Сумма_фрагмента(a[i]) и пусть buf_length - длинна большого буфера а buf2_length -длина малого буфера тогда ...далее Код:
int find_inside(char *a,char *b,int buf_length,int buf2_length)суть должна быть понятна... технология быстрого поиска подстроки в строке, но на манер буферов! 8)) СУПЕР-быстродействие ! Быстрее не получится! P.S. это к разговору давнишнему (применение олимпиадных технологий в жизни) ! |
2Delimiter
Ну в вопросе присутствовали строки ). Но алгоритм хорош ^______^ |
Код:
int FindStr(char *str1,char *str2) |
| Время: 10:47 |