C#算法设计查找篇之01-顺序查找

版权声明:Iori 的技术分享,所有内容均为本人原创,引用请注明出处,谢谢合作! https://blog.csdn.net/qq_31116753/article/details/81843985

顺序查找(Sequential Search)

顺序查找也称线性搜索(Linear Search),是在一个已知无(或有序)序队列中找出与给定关键字相同的值的具体位置。原理是让关键字与队列中的第1个(或最后1个)位置的值逐个比较,直到找出与给定关键字相同的值为止,它的缺点是效率低下。


示例: 

public class Program {

    public static void Main(string[] args) {
        int[] array = { 43, 69, 11, 72, 28, 21, 56, 80, 48, 94, 32, 8 };

        Console.WriteLine(SequentialSearch(array, 80));

        Console.ReadKey();
    }

    private static int SequentialSearch(int[] array, int key) {
        for (int i = 0; i < array.Length; i++)
            if (array[i] == key)
                return i;
        return -1;
    }

}

以上是顺序查找算法的一种实现,以下是这个案例的输出结果:

7

分析:

在最坏的情况下时间复杂度为: O(n) 。

猜你喜欢

转载自blog.csdn.net/qq_31116753/article/details/81843985