site:geeksforgeeks.org explain pattern recognition - Search