我是码客,P客,飘客,接客,代客,码客,乘客,普客

程序员别称大盘点

程序员叫什么客?帖子我结了。实在选不出来哪一个最好,每一个都有道理。民工,没有程序员的特点。比较多的人支持“乘客”,虽然谐音,但不对,程序员比乘客累的多。码客,很形象。我码一个超级玛丽,还码了三千多行。还有更形象的(夜客),其它不再详述,各自体会。除去一些过于俗的名称,列举如下:

乘客
普客
P客
飘客
接客
代客
码客
法客
橙客
程客
飙客
挨踢客
挨客
计客
雅客
搬砖客
必胜客
扑克
美克
仆客
C客
code客
扣客
快客
骇客
编客
民工
衰客
夜客
软客
X客
剩客
过客
负客
剑客
侠客
灰客
马赛克
散客
做客
房客
编客
顾客

 

帖子链接:http://topic.youkuaiyun.com/u/20090115/16/dfe81b07-7e63-487b-951d-1304a4d611e8.html

道格拉斯·佩克(Douglas-Peucker)算法是一种用于简化二维图形的算法,通常用于减小多边形的顶点数,同时保持其基本形状。在 C# 中,你可以按照以下步骤编写该算法: 1. 定义算法函数:首先创建一个名为 `DouglasPeucker` 的函数,接受两个数组参数 - 点列表和最大偏差(epsilon),作为精度控制。 ```csharp public List<Point> DouglasPeucker(List<Point> points, double epsilon) { //... } ``` 2. 初始化辅助变量:设置起始和结束索引,初始状态认为整个点集都是重要的。 ```csharp int start = 0, end = points.Count - 1; List<Point> simplifiedPoints = new List<Point>(points); ``` 3. 跳过极端情况:如果只有一个点或点集是直线,则无需简化。 ```csharp if (end - start <= 1) return simplifiedPoints; ``` 4. 搜索当前最远偏离线段的点。 ```csharp double maxError = GetMaxError(points, start, end); Point furthestPoint = FindFurthestPoint(points, start, end, maxError); ``` 5. 如果偏离超出阈值,将此点添加到结果并递归简化两侧子集合。 ```csharp if (maxError > epsilon) { simplifiedPoints = DouglasPeucker(points.Sublist(start, furthestPoint.Index), epsilon); simplifiedPoints.AddRange(DouglasPeucker(points.Sublist(furthestPoint.Index + 1, end + 1), epsilon)); } else { // 达到精度限制,返回原点集 return points; } ``` 6. 返回简化后的点集。 这个函数会递归地处理每个子集直到达到精度要求。`GetMaxError` 和 `FindFurthestPoint` 是辅助函数,分别计算两点之间的误差和找到误差最大的点。你需要根据实际需求自定义这两个函数。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值