【21天打卡】前端攻城狮重学算法之-顺序查找

活动地址:CSDN21天学习挑战赛

我以为人们在每一时期都可以过有趣而有用的生活。我们应该不虚度一生,应该能够说,“我们已经作了我能作的事”,人们只能要求我们如此,而且只有这样我们才能有一点快乐。
                                                                                                                                        ---居里夫人


作为一名前端攻城狮,为了成为更好的自己,我参加了这次21天算法打卡。

这是第一天,2022年08月01日,建军节,好的开始,就是成功了一半。加油!

创作计划


1,机缘

参加这次算法打卡主要是希望,在给定的时间(21天)里,自己能学有所成。

2,收获

相信算法上能够有点进步吧。

3,日常

周一到周五都是要工作的

但是晚上可以加班学习和自我提升

4,憧憬

希望我能够成长,成为全栈工程师吧。

先定一个小目标,算法了解清楚。

学习计划

**
1,学习目标

今日搞懂顺序查找,有一些程序思维和逻辑

2,学习内容

一文学懂经典算法系列之:顺序查找(附讲解视频)

……

(应该还会扩展学习一些)

3,学习时间

周一至周五晚上 7 点—晚上9点(写作时间:周一,周二,周四晚7点-晚9点)

第一天:2022.08.01 19:00-21:00

4,学习产出

CSDN技术博客 1 篇

**

学习日记

**
1,学习知识点

顺序查找:(Sequential Search),也称穷举查找,是最简单的一种查找方法。

其基本思想是:从线性表的一端开始,依次将每个记录的关键字与给定值进行比较,若某个记录的关键字等于给定值,表示查找成功,返回记录序号;若将线性表中所有记录都比较完,仍未查找到关键字与给定值相等的记录,则表示查找失败,返回一个查找失败的标志值。

2,学习遇到的问题

问题①.js中"[]"表示数组,java中{}的数据是数组吗?

问题②.js中“{}”代表对象,好像是无序的,应该也可以顺序查找来遍历吧?

问题③.什么情况下用顺序查找法?

3,学习的收获

顺序查找优点:算法简单

缺点:效率低

时间复杂度:O(n)

空间复杂度:O(1)

4,实操

  • 输入数据:A = [11,34,20,10,12,35,41,32,43,14],key = 41

JS实操源码:

function sequentialSearch(array,key){
    let i=0;
    while(i<array.length){
        if(array[i]==key){
            return i+1;
        }
        i++;
    } 
    return -1;
};
console.log(sequentialSearch([11,34,20,10,12,35,41,32,43,14],41)); //输出:7

图解:

以上就是今天的学习打开内容,明天再见!~

 


版权声明:本文为happy921212原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。