.NET 4.x Где можно посмотреть реализацию алгоритма Джарвиса или Грэхема - C#
Формулировка задачи:
Здравствуйте.
Кто-нить знает где можно посмотреть реализацию алгоритма Джарвиса или Грэхема на C#?
Заранее благодарен!
Решение задачи: «.NET 4.x Где можно посмотреть реализацию алгоритма Джарвиса или Грэхема»
textual
Листинг программы
- public static List<Point> CreateConvexHull(List<Point> source)
- {
- //1. create a stack of points
- Stack<Point> result = new Stack<Point>();
- //2. sort the incoming points
- SortByPolarAngle(source);
- //3. init stack with 2 first points
- result.Push(source[0]);
- result.Push(source[1]);
- //4. perform test for every other point
- for (int i = 2; i < source.Count; i++)
- {
- //5. the angle between NEXT_TO_TOP[S], TOP[S], and p(i) makes a nonleft turn -> remove if not a vertex
- while (ConterClockWise(result.ElementAt(1), result.Peek(), source[i]) > 0)
- {
- result.Pop();
- }
- result.Push(source[i]);
- }
- return new List<Point>(result);
- }
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д