top of page

Levenshtein Solution 2 source code

 

public class Solution {

                private static int[][] matrix;

 

                public static void main(String[] args) {

 

                                matrix = new int[args[0].length() + 1][args[1].length() + 1];

                                for (int i = 0; i <= args[0].length(); i++) {

                                                matrix[i][0] = i;

                                }

 

                                for (int j = 0; j <= args[1].length(); j++) {

                                                matrix[0][j] = j;

                                }

                                calcMatrix(args);

                                printMatrix(args);

 

                }

 

                private static void calcMatrix(String[] args) {

                                for (int i = 1; i <= args[1].length(); i++) {

                                                for (int j = 1; j <= args[0].length(); j++) {

                                                                if (args[1].charAt(i - 1) == args[0].charAt(j - 1)) {

                                                                                matrix[j][i] = findMin(i, j, true);

                                                                } else {

                                                                                matrix[j][i] = findMin(i, j, false) + 1;

                                                                }

                                                }

                                }

                }

 

                private static int findMin(int i, int j, boolean isEqual) {

                                int minimum = 100;

                                if (isEqual) {

                                                if (matrix[j - 1][i - 1] <= matrix[j][i - 1] + 1

                                                                                && matrix[j - 1][i - 1] <= matrix[j - 1][i] + 1) {

                                                                minimum = matrix[j - 1][i - 1];

                                                }

                                } else {

                                                if (matrix[j - 1][i - 1] < minimum)

                                                                minimum = matrix[j - 1][i - 1];

                                                if (matrix[j][i - 1] < minimum)

                                                                minimum = matrix[j][i - 1];

                                                if (matrix[j - 1][i] < minimum)

                                                                minimum = matrix[j - 1][i];

                                }

                                return minimum;

                }

 

                private static void printMatrix(String[] args) {

                                for (int k = 0; k <= args[1].length(); k++) {

                                                for (int l = 0; l <= args[0].length(); l++) {

                                                                System.out.print(matrix[l][k]);

                                                                if (matrix[l][k] <= 10)

                                                                                System.out.print(" |");

                                                                else

                                                                                System.out.print("|");

                                                }

                                                System.out.print("\n");

                                }

                }

}

 

Annoation in text format

 

File Name >> solution7.java

File Creation data >> 1425000729049

Java Classes --> Solution

Method Name --> main

Method return type --> void

Method Name --> calcMatrix

Method return type --> void

Method Name --> findMin

Method return type --> int

Method Name --> printMatrix

Method return type --> void

Field Name --> matrix

Field type --> int

Is Field Array --> true

int is primitive type

Field Array Dimmension --> 2

matrixFieldis STATIC

matrix modifier --> private

matrix modifier --> static

 

Annotation in RDF format

 

<rdf:RDF

    xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"

    xmlns:SEO="http://www.seontology.org/activeseo/seo/v1#"

    xmlns:DC="http://purl.org/dc/dcmitype/"

    xmlns:rdfs="http://www.w3.org/2000/01/rdf-schema#"

    xmlns:foaf="http://xmlns.com/foaf/0.1/">

  <SEO:METHOD rdf:about="http://www.seontology.org/activeseo/seoanno/data/calcMatrix">

    <SEO:methodHasParam>

      <DC:Software rdf:about="http://www.seontology.org/activeseo/seoanno/data/calcMatrix/Parameter_1">

        <SEO:isParamArray>true</SEO:isParamArray>

        <SEO:paramType>java.lang.String</SEO:paramType>

        <SEO:paramName>args</SEO:paramName>

        <SEO:paramSeq>1</SEO:paramSeq>

        <foaf:name>args</foaf:name>

        <rdf:type rdf:resource="http://www.seontology.org/activeseo/seo/v1#PARAMETER"/>

      </DC:Software>

    </SEO:methodHasParam>

    <SEO:methodCallSignature>calcMatrix(args)</SEO:methodCallSignature>

    <SEO:hasStaticModifier>true</SEO:hasStaticModifier>

    <SEO:returnType>void</SEO:returnType>

    <SEO:methodName>calcMatrix</SEO:methodName>

    <SEO:hasAccessModifier rdf:resource="http://www.seontology.org/activeseo/seo/v1#Private"/>

    <SEO:isReturnPrimitive>true</SEO:isReturnPrimitive>

    <foaf:name>calcMatrix</foaf:name>

    <rdf:type rdf:resource="http://purl.org/dc/dcmitype/Software"/>

    <SEO:methodDeclarationSignature>void calcMatrix(java.lang.String[] args)</SEO:methodDeclarationSignature>

  </SEO:METHOD>

  <DC:Software rdf:about="http://www.seontology.org/activeseo/seoanno/data/main/Parameter_1">

    <SEO:isParamArray>true</SEO:isParamArray>

    <SEO:paramType>java.lang.String</SEO:paramType>

    <SEO:paramName>args</SEO:paramName>

    <SEO:paramSeq>1</SEO:paramSeq>

    <foaf:name>args</foaf:name>

    <rdf:type rdf:resource="http://www.seontology.org/activeseo/seo/v1#PARAMETER"/>

  </DC:Software>

  <SEO:METHOD rdf:about="http://www.seontology.org/activeseo/seoanno/data/main">

    <SEO:methodHasParam rdf:resource="http://www.seontology.org/activeseo/seoanno/data/main/Parameter_1"/>

    <SEO:hasStaticModifier>true</SEO:hasStaticModifier>

    <SEO:hasAccessModifier rdf:resource="http://www.seontology.org/activeseo/seo/v1#Public"/>

    <foaf:name>main</foaf:name>

    <SEO:methodDeclarationSignature>void main(java.lang.String[] args)</SEO:methodDeclarationSignature>

    <rdf:type rdf:resource="http://purl.org/dc/dcmitype/Software"/>

    <SEO:returnType>void</SEO:returnType>

    <SEO:methodName>main</SEO:methodName>

    <SEO:isReturnPrimitive>true</SEO:isReturnPrimitive>

    <SEO:methodCallSignature>main(args)</SEO:methodCallSignature>

  </SEO:METHOD>

  <DC:Software rdf:about="http://www.seontology.org/activeseo/seoanno/data/printMatrix/Parameter_1">

    <SEO:isParamArray>true</SEO:isParamArray>

    <SEO:paramType>java.lang.String</SEO:paramType>

    <SEO:paramName>args</SEO:paramName>

    <SEO:paramSeq>1</SEO:paramSeq>

    <foaf:name>args</foaf:name>

    <rdf:type rdf:resource="http://www.seontology.org/activeseo/seo/v1#PARAMETER"/>

  </DC:Software>

  <DC:Software rdf:about="http://www.seontology.org/activeseo/seoanno/data/findMin">

    <SEO:hasAccessModifier rdf:resource="http://www.seontology.org/activeseo/seo/v1#Private"/>

    <SEO:isReturnPrimitive>true</SEO:isReturnPrimitive>

    <SEO:methodName>findMin</SEO:methodName>

    <SEO:methodHasParam>

      <DC:Software rdf:about="http://www.seontology.org/activeseo/seoanno/data/findMin/Parameter_2">

        <SEO:isParamArray>false</SEO:isParamArray>

        <SEO:paramType>int</SEO:paramType>

        <SEO:paramName>j</SEO:paramName>

        <SEO:paramSeq>2</SEO:paramSeq>

        <foaf:name>j</foaf:name>

        <rdf:type rdf:resource="http://www.seontology.org/activeseo/seo/v1#PARAMETER"/>

      </DC:Software>

    </SEO:methodHasParam>

    <SEO:methodHasParam>

      <DC:Software rdf:about="http://www.seontology.org/activeseo/seoanno/data/findMin/Parameter_1">

        <SEO:isParamArray>false</SEO:isParamArray>

        <SEO:paramType>int</SEO:paramType>

        <SEO:paramName>i</SEO:paramName>

        <SEO:paramSeq>1</SEO:paramSeq>

        <foaf:name>i</foaf:name>

        <rdf:type rdf:resource="http://www.seontology.org/activeseo/seo/v1#PARAMETER"/>

      </DC:Software>

    </SEO:methodHasParam>

    <foaf:name>findMin</foaf:name>

    <SEO:methodDeclarationSignature>int findMin(int i, int j, boolean isEqual)</SEO:methodDeclarationSignature>

    <SEO:hasStaticModifier>true</SEO:hasStaticModifier>

    <SEO:methodHasParam>

      <DC:Software rdf:about="http://www.seontology.org/activeseo/seoanno/data/findMin/Parameter_3">

        <SEO:isParamArray>false</SEO:isParamArray>

        <SEO:paramType>boolean</SEO:paramType>

        <SEO:paramName>isEqual</SEO:paramName>

        <SEO:paramSeq>3</SEO:paramSeq>

        <foaf:name>isEqual</foaf:name>

        <rdf:type rdf:resource="http://www.seontology.org/activeseo/seo/v1#PARAMETER"/>

      </DC:Software>

    </SEO:methodHasParam>

    <SEO:methodCallSignature>findMin(i, j, isEqual)</SEO:methodCallSignature>

    <rdf:type rdf:resource="http://www.seontology.org/activeseo/seo/v1#METHOD"/>

    <SEO:returnType>int</SEO:returnType>

  </DC:Software>

  <SEO:FIELD rdf:about="http://www.seontology.org/activeseo/seoanno/data/matrix">

    <SEO:isTypePrimitive>true</SEO:isTypePrimitive>

    <foaf:name>matrix</foaf:name>

    <SEO:hasArrayDimmension>2</SEO:hasArrayDimmension>

    <SEO:hasStaticModifier>true</SEO:hasStaticModifier>

    <rdfs:comment>private static int[][] matrix</rdfs:comment>

    <rdf:type rdf:resource="http://purl.org/dc/dcmitype/Software"/>

    <SEO:hasAccessModifier rdf:resource="http://www.seontology.org/activeseo/seo/v1#Private"/>

    <SEO:fieldName>matrix</SEO:fieldName>

    <SEO:isFieldArray>true</SEO:isFieldArray>

    <SEO:hasParentClass>Solution</SEO:hasParentClass>

    <SEO:fieldType>int</SEO:fieldType>

  </SEO:FIELD>

  <DC:Software rdf:about="http://www.seontology.org/activeseo/seoanno/data/printMatrix">

    <rdf:type rdf:resource="http://www.seontology.org/activeseo/seo/v1#METHOD"/>

    <SEO:returnType>void</SEO:returnType>

    <SEO:methodCallSignature>printMatrix(args)</SEO:methodCallSignature>

    <SEO:methodDeclarationSignature>void printMatrix(java.lang.String[] args)</SEO:methodDeclarationSignature>

    <SEO:isReturnPrimitive>true</SEO:isReturnPrimitive>

    <SEO:hasAccessModifier rdf:resource="http://www.seontology.org/activeseo/seo/v1#Private"/>

    <SEO:methodHasParam rdf:resource="http://www.seontology.org/activeseo/seoanno/data/printMatrix/Parameter_1"/>

    <foaf:name>printMatrix</foaf:name>

    <SEO:hasStaticModifier>true</SEO:hasStaticModifier>

    <SEO:methodName>printMatrix</SEO:methodName>

  </DC:Software>

  <DC:Software rdf:about="http://www.seontology.org/activeseo/seoanno/data/Solution">

    <SEO:hasField rdf:resource="http://www.seontology.org/activeseo/seoanno/data/matrix"/>

    <SEO:hasMethod rdf:resource="http://www.seontology.org/activeseo/seoanno/data/printMatrix"/>

    <SEO:hasMethod rdf:resource="http://www.seontology.org/activeseo/seoanno/data/findMin"/>

    <SEO:hasMethod rdf:resource="http://www.seontology.org/activeseo/seoanno/data/calcMatrix"/>

    <SEO:hasMethod rdf:resource="http://www.seontology.org/activeseo/seoanno/data/main"/>

    <SEO:hasAccessModifier rdf:resource="http://www.seontology.org/activeseo/seo/v1#Public"/>

    <foaf:name>Solution</foaf:name>

    <rdf:type rdf:resource="http://www.seontology.org/activeseo/seo/v1#CLASS"/>

  </DC:Software>

</rdf:RDF>

 

Annotation in graph format

 

 

 

bottom of page