public char Test22(string text, int k)
        {
            var list = new InnerListTest2 <char>();

            foreach (var t in text)
            {
                list.Add(t);
            }
            return(list.FindkthToLast(k));
        }
        public bool Test27(string text)
        {
            var list = new InnerListTest2 <char>();

            foreach (var value in text)
            {
                list.Add(value);
            }
            list.Print();
            return(list.IsPolindrom());
        }
        public bool Test23(string text, char k)
        {
            var list = new InnerListTest2 <char>();

            foreach (var t in text)
            {
                list.Add(t);
            }
            Console.WriteLine("Removed char is {0}", k);
            Console.WriteLine("List before remove");
            list.Print();
            var b = list.RemoveItemFromListWithoutUsingHead(k);

            Console.WriteLine("List after remove");
            list.Print();
            return(b);
        }
        public void Test21(string text)
        {
            {
                var list = new InnerListTest2 <char>();
                for (var i = 0; i < text.Length; i++)
                {
                    list.Add(text[i]);
                }
                list.Print();
                list.RemoveDuplicatesHashTable();
                list.Print();
            }

            {
                var list = new InnerListTest2 <char>();
                for (var i = 0; i < text.Length; i++)
                {
                    list.Add(text[i]);
                }
                list.Print();
                list.RemoveDuplicates();
                list.Print();
            }
        }
        public void Test24(string text, char ch)
        {
            var list = new InnerListTest2 <char>();

            foreach (var value in text)
            {
                list.Add(value);
            }
            list.Print();
            list.PartitionByItem(ch);
            list.Print();

            var s = list.ToString();

            for (var i = 0; i < s.Length / 2; i++)
            {
                Assert.IsTrue(s[i] <= ch);
            }

            for (var i = s.Length - 1; i >= s.Length / 2; i--)
            {
                Assert.IsTrue(s[i] >= ch);
            }
        }