在C#中,基于范围查找当前项的数据结构通常涉及到集合(Collections)和搜索算法。常见的数据结构包括数组(Array)、列表(List)、字典(Dictionary)、排序列表(SortedList)等。这些数据结构提供了不同的查找方法,如线性查找、二分查找等。
以下是一个基于范围查找当前项的示例代码,使用列表和二分查找:
using System;
using System.Collections.Generic;
class Program
{
static int BinarySearch(List<int> list, int target)
{
int left = 0;
int right = list.Count - 1;
while (left <= right)
{
int mid = left + (right - left) / 2;
if (list[mid] == target)
{
return mid;
}
else if (list[mid] < target)
{
left = mid + 1;
}
else
{
right = mid - 1;
}
}
return -1; // 未找到
}
static void Main(string[] args)
{
List<int> numbers = new List<int> { 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 };
int target = 5;
int index = BinarySearch(numbers, target);
if (index != -1)
{
Console.WriteLine($"找到目标值 {target} 在索引 {index}");
}
else
{
Console.WriteLine($"未找到目标值 {target}");
}
}
}
numbers.Sort()
方法。通过以上信息,您应该能够更好地理解基于范围查找当前项的C#数据结构及其应用场景。
领取专属 10元无门槛券
手把手带您无忧上云