大厂2020届实习生笔试题

栏目: JavaScript · 发布时间: 6年前

内容简介:编程题:1.输入某年某月某日,判断这一天是这一年的第几天?2.寻找多数元素

编程题:

1.输入某年某月某日,判断这一天是这一年的第几天?

// 判断是否为闰年
    function isRun(a) {
        return a % 4 == 0 && a % 100 != 0 || a % 400 == 0
    }

    // 判断是这一年的第几天
    function daysNum(year,month,day) {
        var months = [31,28,31,30,31,30,31,31,30,31,30,31];
        if(month ==1)  {
            return day;
        }
        for(var i = 0; i < month-1; i++) {
            day += months[i]
        }
        if(isRun(year) && month >2) {
            day ++
        }
        return day
    }

2.寻找多数元素

设计一个方法,在一个数组中寻找占大多数的元素(如果存在的话),如果这样的元素不存在,就输出“没有元素占大多数”。

占大多数的元素的定义为:如果一个数组A的长度为n,某一个元素在数组中的数量大于n/2,这个元素即为占大多数的元素。(简单推理可知,一个数组最多有一个元素为占大多数的元素)

附加要求:时间复杂度越小越好

例子:

输入: [3,3,4,2,4,4,2,4,4]

输出: 4 // 一共5个4,超过数组长度的一半

Input: [3,3,4,2,4,4,2,4,]

Output:没有元素占大多数

function SelectNum(arr) {
        let len = arr.length;
        var json = {};
        for (let i = 0; i < len; i++) {
            if (json[arr[i]] == undefined) {
                json[arr[i]] = 1;
            } else {
                json[arr[i]] += 1
            }
        }
        for (let a in json) {
            if (json[a] > len / 2) {
                return a
            }
        }

        return '没有元素占大多数'
    }

3.

大厂2020届实习生笔试题

大厂2020届实习生笔试题

大厂2020届实习生笔试题

请有缘人指点。。


以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

Web协议与实践

Web协议与实践

克里希纳穆尔蒂 (KrishnamurthyBalachander) / 范群波 / 科学出版社 / 2003-7 / 46.0

本书全面论述了传输Web内容的系统和协议,重点讲述了Web中业已成熟和稳定的技术,如TCP/IP协议及DNS技术、HITP/1.0的设计及其与TCP之间的交互;深入阐述了Web高速缓存技术和多媒体流播技术的最新技术动态;分析了Apache Web服务器和Squid代理;还探讨了通信量的分析和测量技术。书中使用了大量示例、技术发展水平报告以及案例分析来阐述Web的工作原理和各个组件之间的交互。本书是......一起来看看 《Web协议与实践》 这本书的介绍吧!

HTML 压缩/解压工具
HTML 压缩/解压工具

在线压缩/解压 HTML 代码

CSS 压缩/解压工具
CSS 压缩/解压工具

在线压缩/解压 CSS 代码

随机密码生成器
随机密码生成器

多种字符组合密码