![](https://img-blog.csdnimg.cn/20201014180756926.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
面试
贝贝爱豆豆
这个作者很懒,什么都没留下…
展开
-
对一组数据进行排序
对于给数据排序的问题,首先要考虑的是数据有什么样的特征? 有没有可能包含有大量的重复的元素? 如果有这种可能的话,三路快排是最好的选择。 是否大部分数据距离它的正确的位置很近?是否近乎有序? 如果这样,插入排序是很好的选择。 是否数据取值的范围非常有限?比如对学生的成绩排序。 如果这样,计数排序是很好的选择 对排序有什么额外的要求?原创 2017-12-27 14:35:51 · 3327 阅读 · 0 评论 -
算法优秀不意味着技术面试优秀
算法面试只是技术面试的一部分 根据你的简历和应聘职位的不同,势必要考察其他技术方面 项目经历和项目中遇到的实际问题 你遇到的印象最深的bug是什么? 面向对象 设计模式 网络相关;安全相关;内存相关;并发相关;。。。 系统设计;scalability 技术面试优秀不意味着能够拿到offer 技术面试只是面试的一部分。面试不仅仅是考察原创 2017-12-27 19:37:58 · 302 阅读 · 0 评论 -
准备算法面试
准备算法面试和准备面试不是同一个事情 算法面试只是面试的一部分 算法导论有太多的推导证明,面试算法的时候不必全掌握。初次阅读算法导论的时候,一定要有选择地去读,学习切忌完美主义。 高级数据结构和算法面试提及的概率很低: 红黑树、计算几何、B-Tree、数论、斐波那契堆、FFT 远远不需要达到信息学竞赛的水平(ACM) 算法面试的准备范围原创 2017-12-27 20:17:38 · 754 阅读 · 0 评论 -
解决面试问题的整体思路
注意题目中的条件 给定一个有序的数组...(有序是不是可以使用二分查找法来进行相关的搜索) 有些题目中的条件本质是暗示: --设计一个O(nlogn)的算法(是不是分治或者排序) --无需考虑额外的空间(我们要开辟额外的空间) --数据规模大概是10000(设计O(n*n)的算法就可以解决) 当没有思路的时候: 给自己几个简单的测试用例,试验一下原创 2017-12-27 20:52:44 · 402 阅读 · 0 评论 -
面试中的时间复杂度分析
面试中的时间复杂度分析 到底什么是大O n表示数据规模 O(f(n))表示运行算法所需要执行的指令数,和f(n)成正比。 到底什么是Big O 二分查找法 O(nlogn) 所需执行指令数:a*logn 寻找数组中的最大/最小值 O(n) 所需执行指令数:b*n 归并排序算法 O(nlogn) 所需执行指令数:c*nlog原创 2017-12-27 21:44:22 · 846 阅读 · 0 评论 -
2018.1.16mobike
笔试:6个选择,都比较简单 编程题: 1.用数组做大数减法 2.在二叉树中搜索离给定节点最近的节点 3.m个人的身份证号码中,查找n个人的信息(m,n)都是亿级别的。 设计题: 设计出一个方案,生成全球范围的短链接。 笔试答了一个小时...... 一面: 就三道编程题目进行了探讨说明分析。 二面: 对编程第三题,设计题做了探讨,询问了红黑树,手写了快排 因为博主最近原创 2018-01-16 19:51:49 · 220 阅读 · 0 评论