Latest Tutorials| Questions and Answers|Ask Questions?|Site Map



Home Answers Viewqa Java-Beginners pattern matching - four way technique
Login         

View Questions and Answers by Category

Advertisements


 
Have Programming Question? Ask it here!
 
 
 


Praveen Bhushan
pattern matching - four way technique
0 Answer(s)      3 years and 9 months ago
Posted in : Java Beginners


Hi, here's my question.. I am trying to implement pattern matching using brute force algorithm where I am trying to apply four way technique to search a given pattern in a text.in this four way technique I will be splitting text which is of length "n" into two halves i.e.from 0 to n/2 and n/2 to n and i will search for a pattern in both the directions i.e. from left as well as from right on this divided parts..there is also a special case wherein i will be searching at the junction where splitting takes place..now what i want to do this is to run this program as four different and independent threads using multithreading concept in java. As you know processors such as core2quad has four processors so i want these threads to utilise the four processors completely...this is my code for brute force..plz help me out in solving this. i also need the amount of time taken by this program to execute.

import java.lang.*;
import java.io.*;
import java.util.*;
public class bruteforcefourway
{
 public static void main(String args[ ])
 {  

   String text1,pattern1;
   Scanner s=new Scanner(System.in);
   System.out.println("\n Enter the text");
   text1=s.nextLine();
   System.out.println("\n Enter the pattern");
    pattern1=s.nextLine();
  brute(text1,pattern1);
}

public static void brute(String text,String pattern)
{
int count=0,i,j;
int n=text.length(); // length of the text
int m=pattern.length(); //length of the pattern
 for(i= 0;i<=n/2;i++)
 {
      j=0;
       while((j<m)&&(pattern.charAt(j)==text.charAt(i + j)))
       { 
            j++;
         if (j==m)
          {
           count++;
           System.out.printf("\n %d Match found between  %d and %d",count,i-1,i+m);
          }
      }
   }
for(i= n/2+1;i<=n;i++)
{
 j=0;
       while((j<m)&&(pattern.charAt(j)==text.charAt(i + j)))
       { 
            j++;
         if (j==m)
          {
           count++;
           System.out.printf("\n %d Match found between  %d and %d",count,i-1,i+m);
          }
      }
}

for(i= n/2-m+1;i<=n/2+m-1;i++)// special case searching at the junction where splitting took place
{
    j=0;
       while((j<m)&&(pattern.charAt(j)==text.charAt(i + j)))
       { 
            j++;
         if (j==m)
          {
           count++;
           System.out.printf("\n %d Match found between  %d and %d",count,i-1,i+m);
          }
      }
}

System.out.printf("\n\n");
System.out.printf("\n Total Matches found are : %d",count);
}
}

Advertisement
View Answers

Related Tutorials/Questions & Answers:
Pattern Matching
Pattern Matching  hello, What operator performs pattern matching?   hii, The "LIKE" operator performs the pattern matching in SQL
Pattern matching
Pattern matching  String tagvalue = I've above string and I need to extract the value of 1- fname 2- lname 3- email. Please help me the best way... Pattern fnamepat = Pattern.compile("fname=\"([^<>]+)\" "); Matcher fmatch
Advertisements
Three Way Matching
Three Way Matching  hello, What is Three Way Matching?   hii, In Three way matching the following documents are compare:- Purchase order Receipt of Items/Packing slip Invoice
Matching Pattern using Regularexpression
Matching Pattern using Regularexpression       This Example describe the way to match a pattern with the text by using Regularexpression.The steps involved in matching a pattern
What is an efficient way to implement a singleton pattern in Java?
What is an efficient way to implement a singleton pattern in Java?  What is an efficient way to implement a singleton pattern in Java
searching technique
searching technique  Hi, i need any searching technique in java to search the data and give the all possible data by links
Matching Zip code using regular expression
Matching Zip code using regular expression       This Example describes the way of matching Zip... Matching_Zipcode.java. The steps involved in program Matching_Zipcode.java
Greedy and Non-Greedy Matching in a Regular Expression
a string in the given string through the Greedy and Non-Greedy way of matching. Here you can learn about the Greedy and Non-Greedy way of matching the word.... Greedy Matching: This is the way of matching string from one to another
Matching Case
Matching Case  Hi, i want some code for matching case from an text file. i.e if i give an query called Java from the user,i need to get an output searching the text file all the names in that without case sensitive
Pattern
Pattern  How to print this pattern in Java please help me A AC ACE ACEG ACEGI The program should be right to left
pattern
pattern  1 3 1 5 3 1 7 5 3 1 9 7 5 3   Here is a number pattern example. 1 3 1 5 3 1 7 5 3 1 9 7 5 3 1 class Pattern{ public static void main(String args[]){ for(int i=1;i<=9;i
Pattern
Pattern  1234321 123 321 12 21 1 1 please,give me this pattern in java   class Sixth_1 { public static void main(String args...; } } }   Here is a number pattern class Pattern{ public
what technique - Java Beginners
what technique  what technique or algorithm i need to use to develop a system a scheduling time table in java
HEPTALYSIS technique in Business Analysis
HEPTALYSIS technique in Business Analysis  What is HEPTALYSIS technique in Business Analysis?   HEPTALYSIS is a Business analysis technique that is for starting up a new business during its initial phase of start up
Pattern resetting using regular expression
Pattern resetting using regular expression       This Example describes the way to retrieve... Pattern_Resetting.java. The steps involved in program Pattern_Resetting.java
Design Pattern
Design Pattern       ?Pattern? word suggests a series of events occurring in a definite order. Many a times, you get an easy way to tackle a recurring problem (which has been
Fingeprint matching in java application
Fingeprint matching in java application  I am developing a java application which require fingerprint identification and verification. It is a webservice application. following considration we have to take in to mind. 1. if I am
pattern printing
pattern printing  
matching database again - Java Beginners
matching database again  Dear experts, So happy I get through this ask a question page again. Thank God. I want to say "A BIG THANK YOU" for helping me about the matching codes. It is working now after fine tuning
TOM Eclipse Plugin
TOM Eclipse Plugin       The way to use a Pattern Matching Programming Language into Eclipse The plugin offers automatic compilation Tom and Java errors
Design pattern
Design pattern  explain factory pattern
Pattern Making
Pattern Making  how to print this pattern in java? * * * * * * * * * * * * * * * * * It is just an example
pattern program
pattern program  can some one plz help me to wright the logic for the following pattern abcdcba abc cba ab ba a a ab ba abc cba abcdcba
Java pattern
Java pattern  Write a Java program that outputs the following pattern. 1 21 321 4321 54321 654321
pattern matcher
pattern matcher  i want a number in a specific range in pattern matcher..for example a number should only be in the range of 6-9 digits... = tf.getText(); Pattern pattern = Pattern.compile("\\d{10}"); Matcher matcher
pattern program
pattern program  can any 1 print the following pattern in java .plz give the code.and yes thank u so much for answering my 2 other questions.had i... before.anyways the pattern goes like this abcdcba abc cba ab ba a a ab ba abc abc
Re: XML SCHEMA MATCHING doubt's - XML
Re: XML SCHEMA MATCHING doubt's  how to store xml file in database? which database require to store xml file? how to connect xml with java
Re: XML SCHEMA MATCHING doubt's - XML
Re: XML SCHEMA MATCHING doubt's  how to store xml file in database? which database require to store xml file? how to connect xml with java
pattern program
pattern program  13579 1357 135 13 1 pattern program in java   Here is your Example:- package Compare; public class PatternDemo { public static void main(String [] args){ int c=10; for(int i=0;i<
Advertisements
 

 

 

DMCA.com