fork(1) download
  1. /* package whatever; // don't place package name! */
  2.  
  3. import java.util.*;
  4. import java.lang.*;
  5. import java.io.*;
  6.  
  7. /* Name of the class has to be "Main" only if the class is public. */
  8. class Ideone
  9. {
  10. public static void main (String[] args) throws java.lang.Exception
  11. {
  12. System.out.println(compare("kitten", "sitting"));
  13. }
  14.  
  15. public static int compare(String term1, String term2) {
  16. if ("".equals(term1)) {
  17. return term2.length();
  18. }
  19. if ("".equals(term2)) {
  20. return term1.length();
  21. }
  22. char char1 = term1.charAt(0);
  23. char char2 = term2.charAt(0);
  24. if (char1 == char2) {
  25. return compare(term1.substring(1), term2.substring(1));
  26. }
  27.  
  28. // OK, no easy results, let's try every possibility:
  29. int insertion = compare(term1, term2.substring(1));
  30. int deletion = compare(term1.substring(1), term2);
  31. int update = compare(term1.substring(1), term2.substring(1));
  32.  
  33. int minimum_changes = Math.min(Math.min(insertion, deletion), update);
  34. return minimum_changes + 1;
  35. }
  36. }
Success #stdin #stdout 0.1s 320320KB
stdin
Standard input is empty
stdout
3