代码优化删除VB中的重复项

时间:2013-03-18 15:00:37

标签: vb.net optimization duplicates

我正在寻找优化我的代码。特别是这个过程

  1. 计算一组位置(基本上是网格上的正方形)
  2. 列出已计算的所有地点
  3. 然后我经历所有这些地点,一次一个。
  4. 我遇到的问题是删除或不包含列表中的重复位置。我已经尝试了一个整数列表(整数来表示位置),但它仍然很慢。为了让您了解数字:我正在谈论至少15,000个不同的位置计算和大约1,000,000个可能的位置。

    对此有任何帮助将不胜感激!

1 个答案:

答案 0 :(得分:0)

以下是我从字符串数组中删除重复项的方法,也许对您有所帮助:

  Dim OneDimensionalTable(1000) As String

  ....

  OneDimensionalTable = RemoveDuplicates(OneDimensionalTable)

  .....


 Private Function RemoveDuplicates(ByVal items As String()) As String()

    Dim noDupsArrList As New ArrayList()
    For i As Integer = 0 To items.Length - 1
        If Not noDupsArrList.Contains(items(i).Trim()) Then
            noDupsArrList.Add(items(i).Trim())
        End If
    Next

    Dim uniqueItems As String() = New String(noDupsArrList.Count - 1) {}
    noDupsArrList.CopyTo(uniqueItems)
    Return uniqueItems

End Function