Checking if one array contains another array C# with Example
public static class ArrayHelpers { public static bool Contains(this T[] array, T[] candidate) { if (IsEmptyLocate(array, candidate)) return false; if (candidate.Length > array.Length) return false; for (int a = 0; a <= array.Length - candidate.Length; a++) { if (array[a].Equals(candidate[0])) { int i = 0; for (; i < candidate.Length; i++) { if (false == array[a + i].Equals(candidate[i])) break; } if (i == candidate.Length) return true; } } return false; } static bool IsEmptyLocate(T[] array, T[] candidate) { return array == null || candidate == null || array.Length == 0 || candidate.Length == 0 || candidate.Length > array.Length; } } /// Sample byte[] EndOfStream = Encoding.ASCII.GetBytes("---3141592---"); byte[] FakeReceivedFromStream = Encoding.ASCII.GetBytes("Hello, world!!!---3141592---"); if (FakeReceivedFromStream.Contains(EndOfStream)) { Console.WriteLine("Message received"); } rotation of an array In my path to studying programming there have been simple, but interesting problems to solve as exercises. One of those problems was to rotate an array(or another collection) by a certain value. Here I will share with you a simple formula to do it.