算法面试:精选微软等公司经典的算法面试100题 第26-35题

26.左旋转字符串

题目:
定义字符串的左旋转操作:把字符串前面的若干个字符移动到字符串的尾部。

如把字符串abcdef左旋转2位得到字符串cdefab。请实现字符串左旋转的函数。
要求时间对长度为n的字符串操作的复杂度为O(n),辅助内存为O(1)。

27.跳台阶问题
题目:一个台阶总共有n级,如果一次可以跳1级,也可以跳2级。
求总共有多少总跳法,并分析算法的时间复杂度。

这道题最近经常出现,包括MicroStrategy等比较重视算法的公司都
曾先后选用过个这道题作为面试题或者笔试题。

28.整数的二进制表示中1的个数
题目:输入一个整数,求该整数的二进制表达中有多少个1。
例如输入10,由于其二进制表示为1010,有两个1,因此输出2。

分析:
这是一道很基本的考查位运算的面试题。
包括微软在内的很多公司都曾采用过这道题。

29.栈的push、pop序列
题目:输入两个整数序列。其中一个序列表示栈的push顺序,
判断另一个序列有没有可能是对应的pop顺序。
为了简单起见,我们假设push序列的任意两个整数都是不相等的。

比如输入的push序列是1、2、3、4、5,那么4、5、3、2、1就有可能是一个pop系列。
因为可以有如下的push和pop序列:
push 1,push 2,push 3,push 4,pop,push 5,pop,pop,pop,pop,
这样得到的pop序列就是4、5、3、2、1。
但序列4、3、5、1、2就不可能是push序列1、2、3、4、5的pop序列。

30.在从1到n的正数中1出现的次数
题目:输入一个整数n,求从1到n这n个整数的十进制表示中1出现的次数。

例如输入12,从1到12这些整数中包含1 的数字有1,10,11和12,1一共出现了5次。
分析:这是一道广为流传的google面试题。

31.华为面试题:
一类似于蜂窝的结构的图,进行搜索最短路径(要求5分钟)

32.
有两个序列a,b,大小都为n,序列元素的值任意整数,无序;
要求:通过交换a,b中的元素,使[序列a元素的和]与[序列b元素的和]之间的差最小。
例如:  
var a=[100,99,98,1,2, 3];
var b=[1, 2, 3, 4,5,40];

33.
实现一个挺高级的字符匹配算法:
给一串很长字符串,要求找到符合要求的字符串,例如目的串:123
1******3***2 ,12*****3这些都要找出来
其实就是类似一些和谐系统。。。。。

34.
实现一个队列。
队列的应用场景为:
一个生产者线程将int类型的数入列,一个消费者线程将int类型的数出列

35.
求一个矩阵中最大的二维矩阵(元素和最大).如:
1 2 0 3 4
2 3 4 5 1
1 1 5 3 0
中最大的是:
4 5
5 3
要求:(1)写出算法;(2)分析时间复杂度;(3)用C写出关键代码

算法面试:精选微软等公司经典的算法面试100题 第26-35题相关推荐

  1. [整理I]精选微软等公司数据结构+算法面试100题 [第1-40题]

    精选微软等公司,数据结构+算法,经典面试100题                                       --------之前40题 --------------- ------- ...

  2. 整理I 精选微软等公司数据结构+算法面试100题 第1-40题

    分享一下我老师大神的人工智能教程!零基础,通俗易懂!http://blog.csdn.net/jiangjunshow 也欢迎大家转载本篇文章.分享知识,造福人民,实现我们中华民族伟大复兴! 精选微软 ...

  3. 横空出世,席卷互联网--评微软等公司数据结构和算法面试100题

    横空出世,席卷互联网                      ---评微软数据结构+算法面试100题 作者:July. 时间:2010年10月-11月.版权所有,侵权必究. 出处:http://bl ...

  4. 横空出世,席卷互联网--评微软等公司数据结构和算法面试100题 .

    入 编程这一行之初,便常听人说,要多动手写代码.可要怎么写列?写些什么列?做些什么列? c语言程序设计100例,太过基础,入门之后,挑战性不够.直接做项目,初学者则需花费大量的时间与精力.且得有一定能 ...

  5. 【每日算法】C语言8大经典排序算法(2)

    接上文--->[每日算法]C语言8大经典排序算法(1) 二.插入类排序 插入排序(Insertion Sort)的基本思想是:每次将一个待排序的记录,按其关键字大小插入到前面已经排好序的子文件中 ...

  6. 算法设计与分析——十大经典排序算法二(6--10)

    一个不知名大学生,江湖人称菜狗 original author: jacky Li Email : 3435673055@qq.com  Time of completion:2023.3.1 Las ...

  7. 精选微软等公司数据结构+算法经典面试100题[1-80题]

    原文转自:http://topic.csdn.net/u/20101126/10/b4f12a00-6280-492f-b785-cb6835a63dc9.html 精选微软等数据结构+算法面试100 ...

  8. java array 元素的位置_数据结构与算法:动态图解十大经典排序算法(含JAVA代码实现)...

    点击上方"JAVA",星标公众号 重磅干货,第一时间送达 本文将采取动态图+文字描述+正确的java代码实现来讲解以下十大排序算法: 冒泡排序 选择排序 插入排序 希尔排序 归并排 ...

  9. gentry算法_28个不得不看的经典编程算法

    前十个是来自圣经的十大算法: 发起人的描述:<来自圣经的证明>收集了数十个简洁而优雅的数学证明,迅速赢得了大批数学爱好者的追捧.如果还有一本<来自圣经的算法>,哪些算法会列入其 ...

最新文章

  1. mysql语句中的sum(if(exp1,exp2,exp3))
  2. [文件系统]文件系统学习笔记(一)---基本概念以及inode
  3. cdn收费方式有几种
  4. 元学习论文OPTIMIZATION AS A MODEL FOR FEW-SHOT LEARNING的简单理解
  5. 光纤收发器的原理及应用_光纤收发器的应用与讲解
  6. 机器学习中的范数规则化之L0、L1、L2范数
  7. chainmaker-go-sdk 查看客户端日志
  8. listView 下拉动态加载数据
  9. 顺着IP地址他们能找到我家吗?
  10. Fortran入门教程(一)——引入篇
  11. 沙盘 服务器未响应,为什么沙盘总是服务启动失败
  12. DWM1000开启后TX、RX、SFD、RXOK均不亮的原因
  13. STK X教程—C++/CLI
  14. 矩阵快速幂(原理+模板)
  15. c语言中的 #ifndef/#define/#endif的作用
  16. 利用Python和正则表达式验证hotmail邮箱的格式
  17. C语言程序——首字母变大写
  18. Word 2016 及以上版本如何设置分别自动插入可以链接到正文的图目录和表目录
  19. 关于相对熵(KL距离)的理解
  20. java面试常问问题及答案,附源代码

热门文章

  1. 同时绑定onpropertychange 和 oninput 事件,实时检测 input、textarea输入改变事件,支持低版本IE,支持复制粘贴...
  2. 通过修改注册表设定浏览器的却省值
  3. b样条曲面绘制 opengl_CAD制图软件中如何利用EXCEL输入坐标绘制曲线?
  4. idea main scanner 输入_哇晒,你竟然不知道idea的 Live Templates
  5. 常见的php笔试题(附答案)搜集整理
  6. C#写的WebServices可运行于树莓派
  7. 洛谷P2463 Sandy的卡片【后缀数组】【二分】
  8. windows 安装yaml支持和pytest支持等
  9. C# 跨平台的支付类库ICanPay
  10. 有两个地方,用到了javabean对象和属性字符串值之间的转换