jfen625

一、投递信息

  1. 投递时间:2020年3月21日
  2. 岗位:web前端开发工程师—暑期实习
  3. 工作地点:成都
  4. 信息来源:校招优选微信公众号
  5. 回复时间:2020年3月26日
  6. 笔试时间:2020年3月28日
  7. 笔试平台:牛客网

二、笔试题型

  1. 单选题
  2. 多选题
  3. 2道编程题

三、回忆起来的题或考点

  1.  行内样式的优先级

    • <p class="a b">hello html</p>

    • p{color: blue;}.a{color: red;}.b{color: yellow;}文本显示的颜色?

  2.  二叉树的中序遍历(太久没看题,把先序和中序搞混了,我对不起数据结构的老师)

  3.  TCP拥塞控制(我看了,但是忘了,心痛!)

    学习文章:https://segmentfault.com/a/1190000018360050

  4. 数组、链表、树、哈希表(最高性能)

  5. switc语法问题(这应该是送分的)
  6. ICMPv6(看过,但没记住)
  • 行内、块级元素(比较简单)
  • 不属于数组的方法    splice()、join()、reverse()、sort()  
    • 我寻思这都能用呀。想不明白,有大神看到能指点我一下吗
  • 堆、栈、进程、线程
  • 正则表达式(这个单选多选都出了)
  • let
  • 编程题

     1.小明有n元钱去买口罩,共有6个品牌,A品牌2个装(2元),B品牌3个装(2元),C品牌1个装(3元),D品牌5个装(1元),E品牌3个装(5元),F品牌3个装(2元),每个牌子只能买一次,请问n元小明最多能买多少个?

       当时的想法:这道题很像背包问题,重量=钱;价值=口罩数量。可是我理解的还不是很透彻,使用for循环,一步步遍历下去,只有60%通过,而且浪费了特别多的时间。

       背包问题:https://segmentfault.com/a/1190000012829866

       这里提供学习链接,大家一块钻研,如果我后面写出来成功的,会贴过来。

       

      2.三角形的每条边上有4个圆,在每个圆内写出1-9,使每条边的和相等。按以下的顺序。

       

       当时的想法:做完第一题就只剩下10来分钟,连思路都没,只能硬着头皮敲。但是后面没输出好像也还是0%

        解题思路:

      • 首先判断输入的内容是否违法,(必须是1-9,且不能重复)
      • 1-9的总和为45,设每一边的和为x,三个顶点为a,b,c;3x=45+a+b+c(一个顶点两条边,所以是重复计算的);由此可得a+b+c为三的倍数;
      • 例:三个角分别为1 4 7 || 2 5 8 ||  3 6 9    
        •   1 4边有5 9 
        •   1 7边有3 8
        •   4 7 边有2 6
       let a =  [1,5,9,4,2,6,7,3,8];
        var nums = [1,2,3,4,5,6,7,8,9];
        function permute(nums,a){
          var result =[];
          let b = JSON.parse(JSON.stringify(a)) ;//防止原数组污染
          b.sort((v1,v2)=>v1-v2);//排序
          //进行1对1的判断输入是否合法
          for(let i=0;i<b.length;i++){
            if(b[i]!==nums[i]){
              console.log("非法");
              return false;
              break;
            }
          }
          //三个顶点是否能被三整除
          if((a[0]+a[3]+a[6])%3==0){
            for(i=0;i<a.length;){
              let p = a[i]+a[i+1]+a[i+2]+(a[i+3]?a[i+3]:a[0])
              result.push(p);
              i += 3;
            }//获得三条边的长
            if(result[0]==result[1]&&result[0]==result[2]){
              return true;
            }else{
              return false;
            }
          }
        }
    console.log(permute(nums,a));

     

    四、总结

      1、选择题很多一知半解,能排除一两个选项,然后靠运气

        2、选择题问的比较多的是基础知识,计算机网络、数据结构、JavaScript、CSS,是自己知识点不够牢固,题做得也不够。接下来就是每天在基础上花时间,将还给老师的补回来。

        3、这两道编程题其实算简单,但是我通过率第一道只有60%,第二道0%其实不应该,第一次用牛客网笔试不熟悉是一方面,还有自己不会把控时间,慌了神。

        4、接下来就是围绕这两方面,进行巩固基础和刷题进行。给定自己最低目标每天刷一道题。我会把每次笔试或者面试进行总结,慢慢进步吧!!!

     

    分类:

    技术点:

    相关文章:

    • 2021-05-21
    • 2021-09-06
    • 2021-09-18
    • 2021-12-24
    • 2022-01-01
    • 2021-09-29
    • 2021-10-13
    • 2021-10-29
    猜你喜欢
    • 2021-10-30
    • 2021-05-14
    • 2021-11-07
    • 2021-12-19
    • 2019-06-19
    • 2021-06-19
    • 2021-11-17
    相关资源
    相似解决方案