public static void Main(String[] args) { #region FirstDuplicateDemo FirstDuplicate firstDuplicate = new FirstDuplicate(); //int[] inputArray = new int[] { 2, 1, 3, 5, 3, 2 }; int[] inputArray = new int[] { 1, 2, 1, 2, 3, 3 }; int output = firstDuplicate.Duplicate(inputArray); Console.WriteLine("Duplicate number: " + output); output = firstDuplicate.DuplicateByDictionary(inputArray); Console.WriteLine("Duplicate number: " + output); #endregion #region NonRepeatingCharacter StringManageMent stringMangement = new StringManageMent(); string input = "aaabcccdeeef"; char ch = stringMangement.NonRepeatingCharByCountArray(input); Console.WriteLine("Expected output: " + ch); ch = stringMangement.NonRepeatingCharByDicktionary(input); Console.WriteLine("Expected output: " + ch); ch = stringMangement.NonRepeatingCharByMethod(input); Console.WriteLine("Expected output: " + ch); #endregion #region DelegateEventDemo /* var video = new Video() { Title = "Video 1" }; * var videoEncoder = new VideoEncoder(); //publisher * * var mail = new MailService(); //subscriber * var message = new MessageService(); * * videoEncoder.VideoEncoded += mail.OnVideoEncoded; * videoEncoder.VideoEncoded += message.OnVideoEncoded; * * videoEncoder.Encode(video);*/ #endregion #region RandomClassUsesDemo /* RandomGenerator generator = new RandomGenerator(); * * Random random = new Random(); * int num = random.Next(1000); //a random number. * int num2 = random.Next(1000); //a random number less than 1000. * * int rand = generator.RandomNumber(5, 100); * Console.WriteLine($"Random number between 5 and 100 is {rand}"); * * string str = generator.RandomString(10, false); * Console.WriteLine($"Random string of 10 chars is {str}"); * * string pass = generator.RandomPassword(); * Console.WriteLine($"Random string of 6 chars is {pass}"); * * Console.ReadKey();*/ #endregion }