//Substring using recursion substring("", userinput, 0, userinput.length()); public static void substring(String fixed, String str, int step, int len) { if (step < len) { System.out.printf("%d :%s \n", ++counter, fixed); while (step < len) { substring(fixed + str.charAt(step), str, step + 1, len); step ++; } } else System.out.printf("%d :%s \n", ++counter, fixed); } //Anagram using recursion public static void anagram(String str, int len) { anagram0("", str, len); } public static void anagram0(String first, String str, int len) { String left = "", right = ""; if (len == 1) { System.out.println(":" + first + str); } else { for (int pos = 0; pos < len; pos++) { String temp = "" + str.charAt(pos); left = str.substring(0, pos); if (pos + 1 == len) right = ""; else right = str.substring(pos + 1, len); anagram0(first + temp, left + right, len - 1); } } }
Writing code and seeing our application automating a task is a great fun to see.
Sunday, March 8, 2015
Using recursion
Subscribe to:
Post Comments (Atom)
No comments:
Post a Comment