C#实现的二分查找算法
作者:野牛程序员:2024-04-12 20:49:56C#阅读 2813
C#实现的二分查找算法
以下是用C#编写的二分查找算法示例:
using System; class BinarySearch { // 二分查找函数 static int BinarySearchFunc(int[] arr, int target) { int left = 0; int right = arr.Length - 1; while (left <= right) { int mid = left + (right - left) / 2; // 如果目标值在中间值的左侧,缩小右边界 if (arr[mid] > target) right = mid - 1; // 如果目标值在中间值的右侧,缩小左边界 else if (arr[mid] < target) left = mid + 1; // 找到目标值 else return mid; } // 目标值不存在于数组中 return -1; } // 主函数,用于测试二分查找 static void Main(string[] args) { int[] arr = { 2, 4, 6, 8, 10, 12, 14, 16, 18, 20 }; int target = 12; int result = BinarySearchFunc(arr, target); if (result != -1) Console.WriteLine($"目标值 {target} 在数组中的索引为 {result}。"); else Console.WriteLine($"目标值 {target} 不存在于数组中。"); } }
这段代码实现了一个简单的二分查找算法。在 Main
函数中,创建了一个有序数组 arr
,然后调用 BinarySearchFunc
函数来查找目标值 target
在数组中的索引位置。如果找到了目标值,则返回其索引位置;如果没有找到,则返回 -1。
野牛程序员教少儿编程与信息学奥赛-微信|电话:15892516892
- 上一篇:完全平方数的性质
- 下一篇:Python搜索算法-二分查找算法详解