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

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

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

C#算法设计概述

顺序查找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)

AlgorithmMan

AlgorithmMan by Iori,AlgorithmMan是使用C#开发的一套用于算法演示的工具。

下载链接:AlgorithmMan-BinaryTreeSort

本文由 .Net中文网 原创发布,欢迎大家踊跃转载。

转载请注明本文地址:https://www.byteflying.com/archives/697

发表评论

登录后才能评论

评论列表(2条)