1 / 46
文档名称:

算法面试题及答案.docx

格式:docx   大小:100KB   页数:46页
下载后只包含 1 个 DOCX 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

算法面试题及答案.docx

上传人:lyd13607 2021/7/16 文件大小:100 KB

下载得到文件列表

算法面试题及答案.docx

文档介绍

文档介绍:Document number:BGCG-0857-BTDO-0089-2022
算法面试题及答案
1. 时针分针重合几次
表面上有60个小格,每小格代表一分钟,
时针每分钟走1/12小格,分针每分钟走1小格,从第一次重合到第二次重合分针比时针多走一圈即60小格,所以
60/(1-1/12)=720/11
每隔720/11分才重合一次(而并不是每小时重合一次)
1440里有22个720/11,如果说算上0点和24点,那也是重合23次而已,但我觉得0点应该算到前一天的24点头上,所以每一天循环下来重合22次啊
2. 找出字符串的最长不重复子串,输出长度
建一个256个单元的数组,每一个单元代表一个字符,数组中保存上次该字符上次出现的位置;
依次读入字符串,同时维护数组的值;
如果遇到冲突了,就返回冲突字符中保存的位置,继续第二步。也可以用hashmap保存已经出现的字符和字符的位置
3. 说是有一个文本文件,大约有一万行,每行一个词,要求统计出其中最频繁出
现的前十个词。
先用哈希,统计每个词出现的次数,然后在用在N个数中找出前K大个数的方法找出出现
次数最多的前10个词。
4. 如题3,但是车次文件特别大,没有办法一次读入内存。
1) 直接排序,写文件时,同时写入字符串及其出现
次数。
2) 可以用哈希,比如先根据字符串的第一个字符将字符串换分为多个区域,每个区域的字符串写到一个文件内,然后再用哈希+堆统计每个区域内前10个频率最高的字符串,最后求出所有字符串中前10个频率最高的字符串。
5. 有一个整数n,将n分解成若干个整数之和,问如何分解能使这些数的乘积最大,输出这个乘积m。例如:n=12
(1)分解为1+1+1+…+1,12个1, m=1*1*1……*1=1
(2)分解为2+2+…+2,6个2, m=64
(3)分解为3+3+3+3,4个3, m=81
(4)大于等于4时分解时只能分解为2和3,且2最多两个
f(n) = 3*f(n-3) n>4
f(4) = 2*2
f(3) = 3
f(2) = 2分解为4+4+4,3个4, m=64
6. 求数组n中出现次数超过一半的数
把数组分成[n/2]组,则至少有一组包含重复的数,因为如果无重复数,则最多只有出现次数等于一半的数。算法如下:
k<-n;
while k>3 do
把数组分成[k/2]组;
for i=1 to [k/2] do
?? ?if 组内2个数相同,则任取一个数留下;
?? ?else 2个数同时扔掉;
k<-剩下的数
if k=3
?? ?then 任取2个数进行比较;
?? ? ?if 两个数不同,则2个数都扔掉
?? ? ? else 任取一个数
?? ?if k=2 or 1 then 任取一数
7. A文件中最多有n个正整数,而且每个数均小于n,n <=10的七次方。不会出现重复的数。
要求对A文件中的数进行排序,可用内存为1M,磁盘可用空间足够。
不要把任何问题都往很复杂的算法上靠,最直接最简单的解决问题才是工程师应有的素质,
题目给的很有分寸:n个数,都小于n,两两不同,1M=10^6byte=10^7bit的内存,n <10^7
思路:
把1M内存看作是一个长度为10^7的位数组,每一位都初始化为0
从头扫描n个数,如果碰到i,就把位数组的第i个位置置为1,
1M内存有点少, (1M = 8M bits), 可以代表8M整数,现在n <=10的七次方,你可以读2遍文件,就可以完成排序了。第一次排n <8M得数, 第2遍排 8M<="" div="" style="word-wrap: break-word;">
8. 有10亿个杂乱无章的数,怎样最快地求出其中前1000大的数。
1) 建一个1000个数的堆,复杂度为N*(log1000)=10N
2) ,这样一个字节可以标识8个整数的存在与否,对于所有32位的整数,需要512Mb,所以开辟一个512Mb的字符数组A,初始全0
?? ,将A[n>>3]设置为A[n>>3]|(1<<="" div="" style="word-wrap: break-word;">
?? ,从大到小读取1000个值为1的数,就是最大的1000个数了。
这样读文件就只需要1遍,在不考虑内存开销的情况下,应该是速度最快的方法了。
9. 一棵树节点1, 2, 3, ... , n. 怎样实现:
先进行O(n)预处理,然后任给两个节点,用O(1)

最近更新

2024年甘肃通渭县事业单位招聘90人历年高频难.. 89页

2024年福建南平市事业单位历年高频难、易点(.. 88页

2024年福建永安市属事业单位招聘历年高频难、.. 88页

2024年福建省漳州芗城区公益性岗位招聘104人历.. 87页

2024年福建省福州市鼓楼区事业单位招聘130人历.. 280页

2024年福建福州仓山区对湖街道办事处编外人员.. 280页

公交公司“为民服务创先争优”全面打造国有公.. 6页

2024年第四季度重庆经贸中等专业学校事业单位.. 278页

2024年苏州工业职业技术学院单招职业适应性测.. 55页

2024年贵州中烟工业铜仁卷烟厂招聘16人历年高.. 276页

2024年贵州毕节市七星关区事业单位招聘148人历.. 283页

2024年贵州水利水电职业技术学院单招职业适应.. 54页

2024年贵州省毕节市七星关区第五批事业单位招.. 90页

2024年贵州省湄潭县事业单位招聘42人历年高频.. 282页

北海市物业专项维修资金管理实施细则 8页

2024年辽宁轻工职业学院单招职业适应性测试题.. 54页

2024年郑州城市职业学院单招职业适应性测试题.. 56页

2024年重庆信息技术职业学院单招职业适应性测.. 54页

2024年闽西职业技术学院单招职业适应性测试题.. 55页

2024年青海交通职业技术学院单招职业适应性测.. 55页

2024年黎明职业大学单招职业适应性测试题库参.. 56页

内蒙古乌海市选调生考试(行政职业能力测验).. 147页

作业风险辨识及防范措施 3页

车间平面布置图检查表 3页

复尔凯螺旋型鼻胃肠管 58页

集团现行管理体系诊断报告华彩咨询集团经典案.. 42页

霍尼韦尔1902快速入门指南(中) 16页

2021年火灾自动报警系统标准设计综合规范解读.. 9页

银行星级网点申报材料 10页

厨师计划书 42页