今天面字节啦~05.10

news/2024/5/20 8:02:53 标签: 算法, 数据挖掘, 二叉树, 聚类, java

每次面试都感觉面试官好温和,每次面试也是对自己的一个检验,感觉自己有所长进,但更有所提升。面试除了紧张之外,还有长长的收获跟对未来的规划。

一、 Q&A

  • Q1:计网三次握手
  • A1:老话术了——客户端发送请求(seq),服务器端回送请求(seq,ack),客户端返回自己收到了服务器端的信息(seq)
  • Q2:七层模型
  • A2:大致描述了一下物理层(同轴电缆、双绞线)、数据链路层(海明码、曼彻斯特编码)、网络层(IP ARP)、传输层(TCP、UDP)跟应用层(HTTP、FTP)
  • Q3:说一下二叉树、平衡二叉树B+树跟B-树
  • A3:二叉树就是每个节点只有一个前驱,但是最多有两个后继;平衡二叉树左右子树深度不超过1;B+跟B-真的不太清楚
  • Q4:快排
  • A4:一串数字序列,有一个枢轴元素(假设是第一个元素),有两个指针,分别指向左右最两边,从最右边开始找,找到第一个小于枢轴的元素,把当前右指针指向的值赋给左指针指向的值,左指针加一,然后向后走找第一个比枢轴元素大的元素,把当前左指针指向的值赋给右指针指向的值,右指针减一,然后循环上述过程,知道右指针的下标小于等于左指针的下标。最后把枢轴元素赋给左指针或者右指针指向的值就好。
  • Q5:SQL掌握地如何
  • A5:比较基础,只会比较简单的增删改查,创建和删除之类的
  • Q5:尝试过网络编程吗?那些HTTP状态码知道吗?
  • A6:没有,只用过socket进行通信之类的;状态码之前看过,但是因为不常用印象不深刻,只知道404是(面试官笑了,说找不到是吧)

代码

  • 面:我们写下代码吧!写一个链表合并
  • 我:好!开始写emmm定义了一个链表的结构体,然后开始想怎么输入一个链表,问面试官——我知道大概操作,但是实在不知道输入输出怎么搞~
  • 面:两个链表已经有序了,你只需要遍历它们,然后放到一个新的链表里
  • 我:(还是想不到怎么输入)
  • 面:假设两个链表是L1、L2,最后的链表是L3,(我真的感觉面试官已经说完了这道题了,但是我真的想不出怎么输入输出)
  • 面:算了,写个冒泡排序吧
  • 我:好(灰溜溜地写了冒泡排序)

项目

  • 自己的项目说了说

继续聊

  • Q:你们大数据学了什么课?
  • A:计算机视觉、数据挖掘、机器学习、人工智能
  • Q:数据挖掘学了什么算法
  • A:聚类:k-means,分类:决策树、贝叶斯,关联规则挖掘里面的剪枝算法
  • Q:说下k-means算法
  • A:聚类算法,K个随机值,然后通过计算距离来寻找最近的点进行聚类
  • Q:说下距离
  • A:欧式距离、马氏距离、闵可夫斯基距离、余弦相似度
  • Q:了解过流行框架,比如hadoop这些吗
  • A:没有
  • Q:(面试官说:现在学校还是算法偏多吧,没关系)

还有什么问题

  • 我问了问岗位问题,面试官说我计算机基础挺好的(计网这些),表达能力也挺好的,编程需要提高(不用着急,毕竟才大三还有时间,多刷题提高提高就好),还有就是java或者python至少掌握一门,SQL方面由于现在的数据越来越向SQL方面发展了也需要更加了解,多刷SQL方面的题目。
  • 还说你们现在就是多学知识的时候,现在公司来的实习生都一个劲地学习;多了解之类。

总而言之就是感觉面试官真的很好,面试也特别放松~
然后也获得了一些启发,就记录一下~


http://www.niftyadmin.cn/n/964566.html

相关文章

nios 和arm 是硬核还是软核?

核(CORE)是一个数字系统的核心,负责整个系统的内存调度,中断管理,算术逻辑运算等,如同整个系统的大脑,是由物理电气实现逻辑功能的关键。尽管复杂,但不可忽略的是,核同其…

[转] Java常用

一、SpringMVC http://blog.csdn.net/evankaka/article/details/45501811 Spring Web MVC是一种基于Java的实现了Web MVC设计模式的请求驱动类型的轻量级Web框架,即使用了MVC架构模式的思想,将web层进行职责解耦,基于请求驱动指的就是使用请求…

【leetcode】合并两个有序表05.11

接着昨天的帖子写了有序表的合并问题,顺便温习了一下头插法和尾插法。 头插法 链表结构 struct listnode{int val;//值listnode *next;//下个元素指针listnode(int r_val,listnode *r_nextnullpptr){val r_val;next r_next;} }具体代码 头插法顾名思义&#xf…

GIT刷新忽略文件.gitignore

1、使用命令工具Git Bash,进入需要修改的工作目录。如C:/est 则输入 cd c:/test 2、重置所有缓存(注意后面有个.) git rm -r --cached . 3、重新添加(注意后面有个.) git add . 4、提交 git commit -m "update .gitignore file "

【leetcode05.12】203.移除链表元素

温习链表,学有所得 做链表题目之时,一定记得画图!记得画图!记得画图! 链表元素删除 分为两种情况——如果是头节点,直接后移即可;如果是非头节点,需要用到待删除节点的前一个节点&a…

ddr与sdram的区别

SDRAM:Synchronous Dynamic Random Access Memory,同步动态随机存储器,同步是指 Memory工作需要同步时钟。 SDRAM从发展到现在已经经历了四代,分别是:第一代SDR SDRAM,第二代DDR SDRAM,第三代DDR2 SDRAM&am…

【leetcode05.13】344.反转字符串

开启字符串新篇章;发现随着经历的增长,对信息的获取方式也在提升——好像以前就是百度/知乎——>bing/CSDN——>Github/Opencode;这个过程更深感其中的妙处。 反转字符串(力扣题目链接) 题目要求原地修改,因此自…