如何过滤掉重复数据?
我想做这样一个程序,有一个包含很多点(x,y)的List,变量名为source,我想获取到其中所有相邻的点,做了如下的程序:
p是所有点的列表,areas是获取的所有相邻的点的集合,但是这个获取的过程中,总是有很多重复的点。
请问应该如何去掉这些重复的点?
public List<Point> FindNextPoint(List<Point> source, Point point, List<Point> findedPoints)
{
List<Point> result = new List<Point>();
result.Add(point);
findedPoints.Add(point);
List<Point> points = source.FindAll(
delegate (Point i)
{
return (Math.Abs(i.X - point.X) <= 2 && Math.Abs(i.Y - point.Y) <= 2) && !findedPoints.Contains(i);
}
);
result.AddRange(points);
findedPoints.AddRange(points);
for (int i = 0; i < points.Count; i++)
{
List<Point> findPoints = FindNextPoint(source, points[i], findedPoints);
result.AddRange(findedPoints);
}
return result;
}p是所有点的列表,areas是获取的所有相邻的点的集合,但是这个获取的过程中,总是有很多重复的点。
for (int i = 0; i < p.Count; i++)
{
if (findedPoints.Contains(p[i])) continue;
first = FindNextPoint(p, p[i], findedPoints);
if (first.Count <= 0) continue;
Point[] item = (Point[])first.ToArray().Clone();
areas.Add(item.ToList());
first.Clear();
}请问应该如何去掉这些重复的点?
...全文
相关推荐
java8新特性将List中按指定属性排序过滤重复数据的方法
Java 8 新特性将 List 中按指定属性排序过滤重复数据的方法Java 8 新特性将 List 中按指定属性排序过滤重复数据的方法是 Java 8 中一个非常有用的功能,它可以帮助开发者快速地对
一个过滤重复数据的 SQL 语句
过滤重复数据的 SQL 语句在关系数据库管理系统中,经常会遇到重复数据的问题,而过滤重复数据是数据处理和分析的重要步骤。本文将介绍如何使用 SQL 语句来过滤重复数据,并讨论相关的知识点。
过滤重复数据软件
删除过滤重复数据的软件,比如:123456123456712345678123456789123456789过滤后就变成123456123456712345678123456789把多的一条12345
.net 过滤重复数据
### .NET过滤重复数据知识点详解#### 一、概述在.NET编程中,过滤重复数据是一项常见的需求,尤其是在处理大量数据时。
asp过滤数组重复数据,函数.asp
asp过滤数组重复数据,函数.aspasp过滤数组重复数据,函数.asp


