前端笔试之去重算法

在前端的笔试当中,算法是不必可少的一部分。它考验的是你的逻辑思维,你的编程基础。所以在这一章中,本人也就拿一个经典的面试题来讲解一下。

通常前端的算法语言一般采用的是Javascript,本人在这一次的算法讲解当中采用Javascript来讲解,如果是学后端的同学的话一般采用的是java、c++、python。但是算法的思路是一致的,只是语言的不同而已,并不影响我们去理解算法。

这一次,我们就一个不算太难的例子来讲解一下,他就是数组去重~~~~~~
题目:编写一个方法 去掉一个数组的重复元素

首先定义一个数组array

var array =[1,2,3,4,5,6,5,4,2,5,6,8,9,6];

实现方法我这里提供比较基础的两种

第一种:原生基础

这里用函数进行封装了一下

            function removerepeat(array){
                var temp=[];
                var result=[];
                for(var i =0;i

PS:temp可以定义为一个数组,也可以定义为json格式{}。都可以用来存储数据temp里面存放的是存在的数据,循环遍历下来,把存在的数据都编为1,然后再添加到result数组之中。如果重复了的则不进入if里面。

第二种:使用indexOf属性

这里我也是用了一个函数封装,代码如下

           function removerepeat2(array){
                var result=[];
                for(var i=0;i

PS:在这里我讲解一下indexOf的属性,indexOf属性是返回你所寻找的数在数组字符串中的位置,如果找不到这个数的话,就会返回-1。

测试结果的话,使用console.log在控制台输出(本人采用谷歌浏览器)。

console.log(removerepeat(array));
console.log(removerepeat2(array));

我们打开网页,按F12打开控制台,就会看见如下结果。


image.png

OK,本次算法的分享就到这里,虽然简单,但是要认真对待。如有更好算法欢迎分享

你可能感兴趣的:(前端笔试之去重算法)