سلام!
شما دو سوال جداگانه دارید.
یکی تبدیل RGB به یک فضای رنگی دیگر:
خوب مثلا فرض کنید شما می خواهید RGB را به HSL تبدیل کنید. می توانید از فضای نام System.Drawing استفاده کنید:
System.Drawing.Color color = System.Drawing.Color.FromArgb(red, green, blue);
float hue = color.GetHue();
float saturation = color.GetSaturation();
float lightness = color.GetBrightness();
سیستم های دیگری مثل HSV و HSB هم هست که خودتان می توانید با توجه به این مقاله ی ویکی پدیا کدنویسی اش را انجام دهید:
http://en.wikipedia.org/wiki/HSL_and_HSV
همچنین می توانید از این وب سایت استفاده کنید:
http://www.rapidtables.com/convert/color/index.htm
دومی مرتب سازی:
برای مرتب سازی الگوریتم های مختلفی هست. یکی از این الگوریتم ها Quicksort نام دارد که برای استفاده از آن می توانید از متد Array.Sort استفاده کنید.
مثلا به این مثال دقت کنید:
float[] arr = { 2.3f, 1.1f, 9.0f, 6.6f, };
Array.Sort(arr, (a, b) => a.Property.CompareTo(b.Property));
برای اطلاعات بیش تر در مورد این الگوریتم:
http://en.wikipedia.org/wiki/Quicksort
و برای مقایسه الگوریتم های مختلف مرتب سازی از این مقاله ی ویکی پدیا استفاده کنید:
http://en.wikipedia.org/wiki/Sorting_algorithm