校招面试手撕算法汇总

所有题目都是从面经中提取而来,持续更新。

本人也是菜鸟一枚,帖子也会相应的发布自己对于题目的解法和看法,但是可能想得不够,也希望大家能够一起讨论,一起进步。

1.数组中找出所有重复数字?空间复杂度为O(1),时间复杂度最小?

实在没有O(1)的方法,只能实现O(n),欢迎讨论。 方案1:创建n个数字的数组,循环相加,将大于1的数字打印出来 方案2:map,先contains判断,存在就打印,不存在就put

2.一个二维数组只含0,1;将1围城的矩阵中所有的0的数字转换成1?

3.求链表中点?

4. 手写常用设计模式(单例)

饿汉懒汉的区别、好处、缺点都要会 这里可能会引申出单例的条件

5.手写生产者消费者模式?

不解释,不理解的,先背住再好好理解

6.100个0到100之间的整数排序

7.two sum问题到k sum问题

8.旋转数组二分查找

9.算 a + b, 不能用加号或减号

位运算,大家百度一下就可以了

10. 数组中超过一半的数

11. 大文件100亿个数字,求前m大的数

12.两个有序数组,求第k个数

13.最大连续子数组和

基础题,贪心。

14.二维数组中,每个元素有个数字,求某一个点到任意一点的sum和(只能向右或者向下) dp记录到每个点的sum

15.手写快速排序算法,并解释过程。

不会的,直接背吧......

16.重建二叉树

17.二分查找

18.从字符串中“aecbcda”找出不重复的字符组成的顺序子串“aecbd”,用最优的时空复杂度。

19.判断一个链表是否有环(我回答快慢指针,因此引出下一个问题)

两个指针,一个走1步,一个走2步,龟兔赛跑问题

20.一个数组,有正有负,把正的移到右边,负的移到左边。

21.两个队列实现栈

《剑指Offer》原题

22.括号匹配

堆匹配

23.链表反转的操作,参数结构自己设计

24.一个数组,实现原地反转

25.一个只包含小写字母的字符串,去重生成一个只包含单一字母的字符串。例如“abadcab”变成"abdc",只让用最多一个额外的int变量

26.大数加法代码

27.推排序

不会的,直接背吧......

28.给一个字符串,由26个英文字母组成,判断其中有没有重复出现的元素,有返回true,没有返回false

桶排序,大于1 就返回ture

本文来源于牛客网

作者:君若雅

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏后端技术探索

是时候来彻底了解字符编码了!!

你是否认为“ASCII码 = 一个字符就是8比特”?你是否认为一个字节就是一个字符,一个字符就是8比特?你是否还认为你是否还认为UTF-8就是用8比特表示一个字...

892
来自专栏AzMark

Python函数

2097
来自专栏take time, save time

初级程序员面试不靠谱指南(六)

五.很强很伟大的函数指针     我想看到这个标题中“函数指针”几个字之后,估计有一半人会选择关掉界面,因为我最开始学习C语言的时候这一章我曾无数次跳过,看到书...

34610
来自专栏用户画像

7.7.3 多路平衡归并与败者树

归并趟数S=[logm R](向下取整)。从而增加归并路数m可以减少归并趟数S,进而减少访问外存的次数(I/O次数)。然而,当增加归并路数m时,内部归并时间将增...

722
来自专栏游戏开发那些事

【转】STL之二分查找 (Binary search in STL)

Section I 正确区分不同的查找算法count,find,binary_search,lower_bound,upper_bound,equal_rang...

1431
来自专栏java思维导图

经典面试问题: Top K 之 -- 海量数据找出现次数最多或,不重复的

林冠宏 / 指尖下的幽灵 仅列举一些解决方法,事实的解决方案是非常多的。 这些问题都是面临着有如下的考虑: 内存不足以放下所有的数。 机器CPU的核数不够。 ...

4207
来自专栏数据派THU

收藏 | 应对程序员面试,你必须知道的8大数据结构

瑞士计算机科学家Niklaus Wirth在1976年写了一本书,名为《算法+数据结构=编程》。

940
来自专栏zaking's

js算法初窥02(排序算法02-归并、快速以及堆排序)

1763
来自专栏用户2442861的专栏

2014阿里巴巴 实习生电面题目:输出给定字符串的全部连续子串

转载请注明出处:http://blog.csdn.net/ns_code/article/details/21043665

1071
来自专栏blackheart的专栏

[程序设计语言]-[核心概念]-03:控制流

0.概述 前面介绍了语言的演进以及一些基础概念后,从本篇开始进入了语言的核心问题中。这一篇讨论的是语言计算模型(大致可以用控制流来表述),大致如下7种: 顺序执...

21110

扫码关注云+社区

领取腾讯云代金券