招聘面试_面试算法培训讲座_第1页
招聘面试_面试算法培训讲座_第2页
招聘面试_面试算法培训讲座_第3页
招聘面试_面试算法培训讲座_第4页
招聘面试_面试算法培训讲座_第5页
已阅读5页,还剩39页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1 2013第3次面试 算法讲座 July18 00 21 30北理工二零一三年十月二十七日 2 你最大的资本是什么 3 你最大的资本就是你的自信 4 So keeprelaxed havefun 5 第一部分 2014校招梳理 6 2014校招热点 2014校招笔试面试题集锦下面试题前的题号对应上文中的题号 7 总体思路 笔试偏基础涵盖语言 计算机组成原理 操作系统 网络协议 数据库 概率期望等知识面试偏算法且极具针对性的根据简历提问无论是笔试还是面试 两者都很看重你的实际编程能力 8 笔面关键 基础coding能力算法 9 三者关系 有基础和一定的coding能力 再谈算法 既然要参加笔试面试 那么便是想进公司上班在公司内 没有一定的coding能力 之前可能再华丽的研究也只是建立在一片废墟上 根基不牢 理想大厦随时可能会轰然倒塌 10 百考不厌的基础题 TCP建立连接的三次握手死锁的条件线程与进程的区别指针与引用的区别C 内存分配堆 栈 自由存储区 全局 静态存储区 常量存储区sizeof字节大小 虚拟函数各排序算法的时间复杂度 快速排序 堆排 归并排序等Java中hashtable与hashmap的区别HashMap基于Hashtable实现 不同之处在于HashMap是非同步的 并且允许null 即nullvalue和nullkey Hashtable则不允许null动态链接库与静态链接库的区别 11 面试中手写code的能力极为重要 12 算法 字符串处理字符串翻转 匹配字符串库函数的编写最长公共子串 子序列基于各种数据结构链表 数组 树 hash表二分查找动态规划海量数据处理数理逻辑经典问题变形系统设计数据挖掘 机器学习 13 时间复杂度 不断优化 不断精简 14 字符串处理 字符串翻转微软面试100题第10题 翻转句子中单词的顺序 例如输入 Iamastudent 则输出 student aamI 编程艺术第1章 字符串的左旋转操作 如把字符串abcdef左旋转2位得到字符串cdefab 要求时间O n 空间O 1 18 在原字符串中把尾部m个字符移动到字符串的头部 如原字符串为 Ilovebaofeng m 7 输出结果 baofengIlove 34 设计一个反转字符串的函数char reverse str char str 不使用系统函数 15 字符串库函数编写 字符串库函数3 已知memcpy的函数为 void memcpy void dest constvoid src size tcount 其中dest是目的指针 src是源指针 请实现memcpy 22 写一个memmove的函数15 字符串转换为整数 实现atoi的22 实现C的strstr 功能 从字符串str1中查找是否有字符串str2 如果有 从str1中的str2位置起 返回str1中str2起始位置的指针 如果没有 返回null 16 字符串中的串中串 最长公共子序列不要求连续最长公共子串要求连续 17 8分钟手写memcpy 18 19 其它数据结构 数组 图链表翻转遍历 查找 插入 删除合并有环无环 有无相交树查找 遍历最近公共祖先高级树 AVL树 红黑树 B树 B 树等set maphash表如何构造hash函数如何避免冲突hashset hashmap 20 二分查找 二分查找相关请实现二分查找5 8 杨氏矩阵查找杨氏矩阵变形给定n n的实数杨氏矩阵 求这n 2个数的中位数 21 21 动态规划 适用条件最优子结构 重叠子问题例子11 输入两个整数n和sum 从数列1 2 3 n中随意取几个数 使其和等于sum 要求将其中所有的可能组合列出来 list1 push front n 典型的01背包问题find factor sum n n 1 放n n 1个数填满sum nlist1 pop front find factor sum n 1 不放n n 1个数填满sum 22 海量数据处理 hash函数映射 hashmap统计 堆排26 单机5G内存 磁盘200T的数据 分别为字符串 然后给定一个字符串 判断这200T数据里面有没有这个字符串 怎么做 如果查询次数会非常的多 怎么预处理 31 有100W个关键字 长度小于等于50字节 用高效的算法找出top10的热词 并对内存的占用不超过1MB 42 假设已有10w个敏感词 现给你50个单词 查询这50个单词中是否有敏感词 23 31 有100W个关键字 长度小于等于50字节 用高效的算法找出top10的热词 并对内存的占用不超过1MB 先把100W个关键字hash映射到小文件 根据题意 100W 50B 50 10 6B 50M 而内存只有1M 故干脆搞一个hash函数 50 分解成50个小文件 针对对每个小文件依次运用hashmap key value 完成每个key的value次数统计 后用堆找出每个小文件中value次数最大的top10 最后依次对每两小文件的top10归并 得到最终的top10 细节很重要 hash映射 hashmap 堆 归并 24 数理逻辑 纯粹考智力1 一个桶里面有白球 黑球各100个 现在按下述规则取球 每次从通里面拿出来两个球 i 如果取出的是两个同色的求 就再放入一个黑球 ii 如果取出的是两个异色的求 就再放入一个白球 问 最后桶里面只剩下一个黑球的概率是多少 6 1 宿舍内5个同学一起玩对战游戏 每场比赛有一些人作为红方 另一些人作为蓝方 请问至少需要多少场比赛 才能使任意两个人之间有一场红方对蓝方和蓝方对红方的比赛 12 25 快排partition的变形 三色球问题22 相同的球放到一起 让你按顺序输出红白蓝三种颜色的球 可以用012来表示 要求只能扫描一次数组将乱序的红白蓝三色小球排列成有序的红白蓝三色的同颜色在一起的小球组 这个问题之所以叫荷兰国旗 是因为我们可以将红白蓝三色小球想象成条状物 有序排列后正好组成荷兰国旗 26 三色球问题思路 类似快排中partition过程 用三个指针 一前begin 一中current 一后end 俩俩交换 current遍历 整个数组序列 current指1不动 current指0 与begin交换 而后current begin current指2 与end交换 而后 current不动 end 快排中的partition过程 27 三色球解决步骤1 28 三色球解决步骤2 29 子数组最大和的变形 36 输入一个整形数组 数组里有正数也有负数 数组中连续的一个或多个整数组成一个子数组 每个子数组都有一个和 求所有子数组的和的最大值 要求时间复杂度为O n i 一维 输入的数组为1 2 3 10 4 7 2 5 和最大的子数组为3 10 4 7 2 因此输出为该子数组的和18 ii 二维 30 iii 子数组 并不只是一个二维数组或矩形 而是联通的元素 上下或左右相邻即视为联通 iv 如果是个轮胎呢 31 系统设计 合适的数据结构 算法输入 结构之 会提示 结构之法 结构之法算法之道 等搜索词 32 第二部分 资料推荐 33 准备资料 3个系列3本书一个讲座3个网站 论坛一个微信公众账号 34 3个系列 程序员编程艺术从最容易想到的思路开始讲起 一步步优化而不是其它题解那样一上来就给你所谓的标准速成答案 面试亦如此秒杀99 的海量数据处理面试题涵盖腾讯 百度 阿里巴巴等公司最喜欢考的关于海量数据处理的试题微软面试100题系列涵盖2011 2012 2013 2014各大校招笔试面试题 35 3本书 编程之美 剑指offer CrackingtheCodingInterview 150ProgrammingQuestionsandSolutions 顺便贴个此本书的题解 36 3本书 编程之美 剑指offer CrackingtheCodingInterview 150ProgrammingQuestionsandSolutions 顺便贴个此本书的题解 37 一个讲座 38 3个网站 论坛 一个刷面试题的leetcode 39 一个微信公众账号 待字闺中 40 第三部分 谈谈几个轻松的话题 41 有没有搞错 offer太多 选择哪个offer去A做什么 去B做什么 你更喜欢做什么 哪个公司更适合做这个 创始人的特征 不一定对 商人出身 赚的钱可能多点技术出身 给的尊重可能多点 42 程序员求职俱乐部 为什么要成立club 网友说 找工作 找妹子 帅哥 找基友 码农三大需求July说 互帮互助 帮助彼此让更多人都能顺利找到工作形式 办讲座 或交流讨论会时间 每月定期举行成员 正找工作已有offer愿分享经验已上班能内推意义 我的存在能为社会带来什么价值我能为他人带来什么帮助 4

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论