| | |
How to optimize this function(about pattern match,A problem in a Interview)
Please support our C++ advertiser: Intel Parallel Studio Home
![]() |
•
•
Join Date: Mar 2008
Posts: 42
Reputation:
Solved Threads: 6
Question is :
Write a function to find out how many pattern does the str contain? str is a char array consist of '1' and '0';
for example: str = "11010101110101011110100011001" ,pattern = 110;
My solution is change pattern and str to std::string, then use std::string::find to search.
but I think this solution is not efficient.
1.Could you tell me other efficient solution? thanks.
2. if the second parameter is a array, how to optimize it?
Thank you very much!
Write a function
c++ Syntax (Toggle Plain Text)
int f(char* str, long pattern)
for example: str = "11010101110101011110100011001" ,pattern = 110;
My solution is change pattern and str to std::string, then use std::string::find to search.
but I think this solution is not efficient.
1.Could you tell me other efficient solution? thanks.
2. if the second parameter is a array, how to optimize it?
Thank you very much!
>but I think this solution is not efficient.
Why? If you're just guessing or using your "programmer's intuition", you're probably wrong. Interviewers (good ones) tend to smile more on people who aren't afraid to say "I'd rather optimize clean, correct code than fix fast code". That's the sign of an experienced programmer.
Why? If you're just guessing or using your "programmer's intuition", you're probably wrong. Interviewers (good ones) tend to smile more on people who aren't afraid to say "I'd rather optimize clean, correct code than fix fast code". That's the sign of an experienced programmer.
I'm here to prove you wrong.
•
•
Join Date: Dec 2006
Posts: 1,089
Reputation:
Solved Threads: 164
if the pattern matching is done on a very long sequence of characters (eg. searching for the occurrence of a particular phrase or word in a large book), there are several interesting algorithms. here is a link that explores some of them. http://www.jea.acm.org/ARTICLES/Vol4Nbr2/index.html
![]() |
Other Threads in the C++ Forum
- Previous Thread: difficulty in providing delay in gcc compiler
- Next Thread: Interface in DOS
| Thread Tools | Search this Thread |
api array arrays based binary bitmap c++ c/c++ calculator char char* class classes code coding compile console conversion convert count data database delete deploy developer dll download dynamic dynamiccharacterarray email encryption error file forms fstream function functions game getline givemetehcodez google graph gui homeworkhelp iamthwee ifstream input int java lib linkedlist linker list loop looping loops map math matrix memory multiple news node number numbertoword output pointer problem program programming project python random read recursion recursive reference rpg sorting string strings temperature template test text text-file tree unix url variable vector video visual visualstudio win32 windows winsock word wordfrequency wxwidgets






