Google 历年笔试面试30题
1、正整数序列Q中的每个元素都至少能被正整数a和b中的一个整除,现给定a和b,需要计算出Q中的前几项,例如,当a=3,b=5,N=6时,序列为3,5,6,9,10,12
(1)、设计一个函数void generate(int a,int b,int N ,int * Q)计算Q的前几项
(2)、设计测试数据来验证函数程序在各种输入下的正确性。
C++实现:
- #include<iostream>
- using namespace std;
- void generate(int a,int b,int N,int *Q)
- {
- int qa=;
- int qb=;
- int index=;
- while(index<N)
- {
- if(a*qa<b*qb)
- {
- Q[index++]=a*qa;
- qa++;
- }
- else if(a*qa>b*qb)
- {
- Q[index++]=b*qb;
- qb++;
- }
- else
- {
- Q[index++]=a*qa;
- qa++;
- qb++;
- }
- }
- }
- int main()
- {
- int *Q=new int[];
- generate(,,,Q);
- for(int i=;i<;++i)
- cout<<Q[i]<<' ';
- cout<<endl;
- }
变形,如果只包含数a和b,实现代码:
- #include<iostream>
- using namespace std;
- void generate(int a,int b,int N,int *Q)
- {
- if(Q==NULL)
- return;
- int index=;
- Q[]=;
- int *qa=Q;
- int *qb=Q;
- while(index<=N+)
- {
- int minvalue=min(*qa*a,*qb*b);
- Q[index]=minvalue;
- while(*qa*a<=minvalue)
- qa++;
- while(*qb*b<=minvalue)
- qb++;
- ++index;
- }
- }
- int main()
- {
- int *Q=new int[];
- generate(,,,Q);
- for(int i=;i<;++i)
- cout<<Q[i]<<' ';
- cout<<endl;
- }
2、有一个由大小写组成的字符串,现在需要对他进行修改,将其中的所有小写字母排在答谢字母的前面(大写或小写字母之间不要求保持原来次序),如有可能尽量选择时间和空间效率高的算法 c语言函数原型void proc(char *str) 也可以采用你自己熟悉的语言。
- #include<iostream>
- #include<cstring>
- #include<ctype.h>
- using namespace std;
- void swap(char *a,char *b)
- {
- char c=*a;
- *a=*b;
- *b=c;
- }
- void proc(char *str)
- {
- if(str==NULL)
- return;
- int n=strlen(str);
- int i=,j=n-;
- while(i<j)
- {
- while(i<j&&islower(str[i]))
- ++i;
- while(i<j&&isupper(str[j]))
- --j;
- if(i<j)
- swap(&str[i],&str[j]);
- }
- }
- int main()
- {
- char ch[]="AHdfhIKhhGkGE";
- proc(ch);
- cout<<ch<<endl;
- }
3、如何随机选取1000个关键字?
给定一个数据流,其中包含无穷尽的搜索关键字(比如,人们在谷歌搜索时不断输入的关键字)。如何才能从这个无穷尽的流中随机的选取1000个关键字?
http://www.xuebuyuan.com/551780.html
http://ask.julyedu.com/question/447
Google 历年笔试面试30题的更多相关文章
- 剑指offer 面试30题
面试30题: 题目:包含min函数的栈 题:定义栈的数据结构,请在该类型中实现一个能够得到栈最小元素的min函数.在该栈中,调用min.push.pop的时间复杂度都是O(1) 解题思路:1)如果每次 ...
- 【白嫖】IT笔试面试真题讲解系列文章+视频
视频讲解IT公司面试的高频考题~ 持续更新中,欢迎点赞转发~ 干货|名企高频考点指令篇-查看Linux硬盘空间使用情况 干货 | 名企高频考点指令篇-Linux查看CPU内存和系统版本 干货 | 名企 ...
- 那些不能遗忘的知识点回顾——C/C++系列(笔试面试高频题)
有那么一些零碎的小知识点,偶尔很迷惑,偶尔被忽略,偶然却发现它们很重要,这段时间正好在温习这些,就整理在这里,一起学习一起提高!后面还会继续补充. ——前言 1.面向对象的特性 封装.继承.多态. 封 ...
- 找工作笔试面试那些事儿(8)---常问的CC++基础题
这一部分是C/C++程序员在面试的时候会被问到的一些题目的汇总.来源于基本笔试面试书籍,可能有一部分题比较老,但是这也算是基础中的基础,就归纳归纳放上来了.大牛们看到一笑而过就好,普通人看看要是能补上 ...
- 数据结构+算法面试100题~~~摘自CSDN
数据结构+算法面试100题~~~摘自CSDN,作者July 1.把二元查找树转变成排序的双向链表(树) 题目:输入一棵二元查找树,将该二元查找树转换成一个排序的双向链表.要求不能创建任何新的结点,只调 ...
- Java面试题精选(三) JSP/Servlet Java面试逻辑题
-- JSP/Servlet Java面试逻辑题 -- 很显然,Servlet/JSP的WEB前端动态制作的重要性比HTML/CSS/JS的价值高很多,但我们都知道他们都是建立在HT ...
- leetcode 刷500道题,笔试/面试稳过吗?谈一谈这些年来算法的学习
想要学习算法.应付笔试或者应付面试手撕算法题,相信大部分人都会去刷 Leetcode,有读者问?如果我在 leetcode 坚持刷它个 500 道题,以后笔试/面试稳吗? 这里我说下我的个人看法,我认 ...
- C++面试高频题
作者:守望者1028链接:https://www.nowcoder.com/discuss/55353来源:牛客网 面试高频题: 校招过程中参考过牛客诸位大佬的面经,但是具体哪一块是参考谁的我也忘记了 ...
- (转载)Autodesk面试技术题解答
Autodesk面试技术题解答 By SmartPtr(http://www.cppblog.com/SmartPtr/) 近一年以来,AUTODESK的面试题在网上是闹的沸沸扬扬, ...
随机推荐
- 关于HSTS的总结
访问http网站,和服务器交互的步骤浏览器向服务器发起一次HTTP请求服务器返回一个重定向地址浏览器在发送一次HTTPS请求,得到最终内容 上面浏览器发送http请求后容易被拦截,使用HSTS后可以避 ...
- 数据是ERP系统搭建的基础,但,不要让数据毁了ERP
很难想象没有数据的ERP是什么样子的.然而,实际情况又是如何的呢? 根据AMT的研究,在那些上线不成功或者上线后掉线的案例中,有高达70%的项目都有一个共同的直接原因,那就是在数据上出了问题.有的是在 ...
- OkHttp2.0有Bug,暂时不推荐在产品中使用
版权声明: 欢迎转载,但请保留文章原始出处 作者:GavinCT 出处:http://www.cnblogs.com/ct2011/p/4078137.html 之前在博客里推荐使用OkHttp来替换 ...
- android设计的布局在阿拉伯语下界面错乱的解决方法
(1)正在AndroidManifest.xml声明文件的application元素中,增加” android:supportsRtl=true” (2)建] androidの设计的布局在阿拉伯语下界 ...
- phpAdmin修改密码后拒绝访问
[phpMyadmin没配置正确] 解决方法: 1.打开 phpMyadmin 目录找到config.inc.php文件2.查找到$cfg['Servers'][$i]['password']=''3 ...
- 单机安装hive和presto
问题: 公司最近在搞presto,主要是分析一下presto和hive的查询大数据量的性能对比: 我先把我的对比图拿出来(50条数据左右)针对同一条sql(select * from employee ...
- centos7 部署 汉化版 gitlab 10.0.2
更新说明: 20171009:增加3.5的内容 20171008:整理出gitlab部署手册 =============================================== gitla ...
- 转 Ubuntu Linux 环境变量PATH设置
Ubuntu Linux系统环境变量配置文件: /etc/profile : 在登录时,操作系统定制用户环境时使用的第一个文件 ,此文件为系统的每个用户设置环境信息,当用户第一次登录时,该文件被执行. ...
- oracle使用索引和不使用索引性能分析
首先准备一张百万条数据的表,这样分析数据差距更形象! 下面用分页表数据对表进行分析,根据EMP_ID 字段排序,使用索引和不使用索引性能差距! sql查询语法准备,具体业务根据具体表书写sql语法: ...
- AFNetworking2.0简易GET,POST请求封装以及使用
AFNetworking2.0简易GET,POST请求封装以及使用 AFNetworking不用我赘述其强大性,本人仅仅做了非常简易的封装,解决了有时候请求出错的问题,提供源码给大家. 封装源码库下载 ...