using System; using System.Collections.Generic; using System.Text; namespace _2313_LinkedList { class Program { public static string Reverse(string s) { if (s.Length <= 1) return s; else // return Reverse(s.Substring(1, s.Length - 1)) + s.Substring(0, 1); return s.Substring(s.Length-1, 1) + Reverse(s.Substring(0, s.Length - 1)); } public static string Reverse(string s, int i) { if (i >= s.Length / 2) return s; string pre = s.Remove(i); string post = s.Substring(s.Length - i); string f = s.Substring(i, 1); string e = s.Substring(s.Length - 1 - i, 1); string m = s.Substring(i + 1, s.Length - 2 - i*2); Console.WriteLine("s=" + s + ", pre=" + pre + ", f=" + f + ", m=" + m + ", e=" + e + ", post=" + post); s = pre + e + m + f + post; return Reverse(s, i + 1); } static void Main(string[] args) { string s, r; Console.Write("Enter a string: "); s = Console.ReadLine(); r = Reverse(s, 0); Console.WriteLine("The string in reverse is "); Console.WriteLine(r); /* Node first; first = new Node("banana"); Node second = new Node("pear", first); Node third = new Node("casaba", second); Console.WriteLine(third); */ Node front = null; for (int i = 0; i < 10; i++) { Node newNode = new Node(i.ToString(), front); front = newNode; } Console.WriteLine(front); } } }