【九章算法】北美求职之面试题目

九章算法面试题55 旋转字符串

给一个字符串和一个旋转的偏移量offset,将字符串循环右移offset位。如:"abcdefg" ...

  • Tags: 字符串

九章算法面试题54 带重复元素的全排列

给定一个带重复元素的整数集合,求出这个集合中所有元素的全排列。对于集合[1,1,2],其本质不同的全...

  • Tags: 递归, 搜索, 深度优先搜索

九章算法面试题53 第一个出错的代码版本

在早期的svn代码控制器中,代码版本的编号是从1开始累加的。有一天你提交了一个带BUG的代码到代码库...

  • Tags: 二分法

九章算法面试题52 数数字

数一数在0到n之间有多少个数字k(0<=k<=9)。如n=12时,[0,1,2...,1...

  • Tags: 数论

九章算法面试题51 二叉树的序列化

设计一个算法,序列化和反序列化一棵二叉树。解释:序列化的意思是将内存中的一些特定的结构,变成有格式信...

  • Tags: 二叉树

九章算法面试题50 队列上实现Min函数

​在《九章算法面试题23 栈上实现Min函数》中,我们介绍了在栈上实现一个O(1)的Min方法。那么...

  • Tags: 队列

九章算法面试题49 用栈实现队列

规定你只能使用数据结构栈(支持pop, push),怎么样用栈来模拟一个队列的pop和push?提示...

  • Tags: 栈

九章算法面试题48 分割回文串

对于给定字符串,求最少需要几次划分,能够将字符串划分为若干子串,每个子串都是一个回文串。如abaab...

  • Tags: 动态规划

九章算法面试题47 分糖果

N个孩子站成一排,每个人分给一个权重。按照如下的规则分配糖果:每个孩子至少有一个糖果权重较高的孩子,...

  • Tags: 贪心

九章算法面试题46 正负交替

给一个包含正负整数的数组,要求对这个数组中的数进行重新排列,使得其正负交替出现。首先出现负数,然后是...

  • Tags: 数组

九章算法面试题45 寻找最大的储水容器

给定一个正整数数组(a0,a1..),分别代表n个坐标(0,a0), (1,a1),根据这n个点画出...

  • Tags: 指针

九章算法面试题44 设计一个Web Crawler

如果让你来设计一个最基本的Web Crawler,该如何设计?需要考虑的因素有哪些?...

  • Tags: system design

九章算法面试题43 直方图内最大矩阵

给出一个直方图(如图所示),求出所给直方图中所包含的最大矩阵面积。直方图可以用一个整数数组表示,如上...

  • Tags: 矩阵, 栈

九章算法面试题42 构造MaxTree

给定一个没有重复元素的数组A,定义A上的MaxTree如下:MaxTree的根节点为A中最大的数,根...

  • Tags: 栈

九章算法面试题41 判断单词的包含关系

给定两个单词A和B(假设均为小写字母,并且不含重复字母),判断A是否包含B。这里所定义的包含,只需要...

  • Tags: 二进制, 哈希

九章算法面试题40 不用除法求积

给定一个数组A[1..n],求数组B[1..n],使得B[i] = A[1] * A[2] .. *...

  • Tags: 智力题

九章算法面试题39 分割数组

给一个数组A,和一个整数k,将数组分成两个部分(你可以移动数组中的数),使得左边部分的数都

  • Tags: 指针, 排序, 数组

九章算法面试题38 洗牌的技巧

有一副扑克有2n张牌,用1,2,..2*n代表每一张牌,一次洗牌会把牌分成两堆,1,2..n和n+1...

  • Tags: 智力题

九章算法面试题37 主元素

主元素(Majority Number)定义为数组中出现次数严格超过一半的数。找到这个数。要求使用O...

  • Tags: 哈希

九章算法面试题36 交错的字符串

给定三个字符串A, B, C,判断C是否由A和B交错构成。交错构成的意思是,对于字符串C,可以将其每...

  • Tags: 动态规划

九章算法面试题35 构造最大数

给定一个只包含正整数的数组,给出一个方法,将数组中的数拼接起来,使得拼接后的数最大。例如,[1, 3...

  • Tags: 贪心, 数组, 构造

九章算法面试题34 最长01子串

有一个仅有0和1组成的01串,找到其中最长的一段子串,使得该子串中0和1的数目相等...

  • Tags: 哈希

九章算法面试题33 数组波峰

一个数组A[1..n],假设数组中没有任何相邻两数相等,满足A[1]

  • Tags: 二分法

九章算法面试题32 小球排序

有红黄蓝三色的小球若干排成一列,这些小球进行排序,请使用尽量少的空间和时间。...

  • Tags: 排序

九章算法面试题31 子数组的最大差

给定一个数组,求两个不相交的并且是连续的子数组A和B(位置连续),满足|sum(A) - sum(B...

  • Tags: 二分法

九章算法面试题30 最短距离和

初阶:在一个n*m的矩阵中,有k个点,求矩阵中距离这k个点的距离和最近的点。进阶:如果要求这个点与所...

  • Tags: 矩阵, 堆

九章算法面试题29 子矩阵的最大公约数

给定n*n的矩阵,需要查询任意子矩阵中所有数字的最大公约数。请给出一种设计思路,对矩阵进行预处理,加...

  • Tags: 矩阵, 线段树

九章算法面试题28 链表找环

初阶:给一个单链表,判断这个单链表是否存在环,如1->2->3->4->2是...

  • Tags: 指针

九章算法面试题27 最大连续子集

给一个整数集合S,定义S的子集D为连续子集当且仅当D中的整数构成连续的整数序列。求S的最大连续子集,...

  • Tags: 哈希

九章算法面试题26 方格取数

初阶:有一个n*m的矩阵,需要从坐上角(1,1)走到右下角(n,m),只能向右和向下走。矩阵中的每个...

  • Tags: 动态规划

九章算法面试题25 反转单词序列

将一个句子中的单词逆序排列。要求使用O(1)的额外存储空间。如I Love You逆序之后是You ...

  • Tags: 指针

九章算法面试题24 Fizz Buzz

初阶:给一个区间[a,b],对于区间中每个数,如果是3的倍数,输出Fizz,如果是5的倍数,输出Bu...

  • Tags: 堆

九章算法面试题23 栈上实现Min函数

实现一个带Min函数的栈(Stack),让其可以支持O(1)的Push,O(1)的Pop,O(1)的...

  • Tags: 栈

九章算法面试题22 扔棋子

初阶:有一个100层高的大厦,你手中有两个相同的玻璃围棋子。从这个大厦的某一层及更高的层扔下围棋子就...

  • Tags: 动态规划

九章算法面试题21 寻找最近单词对

初阶:有一篇包含N个单词的文章和M个单词对,对于每个单词对,如果他们在文章中都出现了,求出他们在文章...

  • Tags: 二分法, 大数据, Map-Reduce

九章算法面试题20 寻找重复的URL

给定A、B两个大文件,各存放50亿个url,每个url各占256字节,内存限制是4G,让你找出同时在...

  • Tags: Map-Reduce, BloomFilter, 哈希

九章算法面试题19 最常访问IP

给你一个海量的日志数据,提取出某日访问网站次数最多的IP地址。...

  • Tags: 大数据, Map-Reduce, Sticky Sampling, Lossy Counting

九章算法面试题18 复制链表

初阶:复制一个简单链表。假设链表节点只包含data和next。进阶:假设链表节点新增一个属性叫ran...

  • Tags: 链表

九章算法面试题17 从输入流中随机取记录

有一个很大很大的输入流,大到没有存储器可以将其存储下来,而且只输入一次,如何从这个输入流中等概率随机...

  • Tags: 概率

九章算法面试题16 01随机生成函数

有一个01随机生成函数,rand(2),以p的概率生成1,1-p的概率生成0。请用这个生成函数设计一...

  • Tags: 随机数生成

九章算法面试题15 字符串编辑距离

有两个字符串A和B,对A可以进行如下的操作:插入一个字符,删除一个字符,替换一个字符。问A可以通过最...

  • Tags: 动态规划

九章算法面试题14 超过一半的数

初阶:有N个数,其中一个数的出现次数严格超过了一半。求这个数。进阶1:有N个数,其中两个数的出现次数...

  • Tags: 芯片测试

九章算法面试题13 随机数生成器

有一个随机数生成器,每次等概率的返回1到5中的一个整数。现在需要你利用这个随机数生成器来设计一个新的...

  • Tags: 随机数生成

九章算法面试题12 最大子区间/矩阵

初阶:数组A中有N个数,需要找到A的最大子区间,使得区间内的数和最大。即找到0<=i<=...

  • Tags: 动态规划, 矩阵

九章算法面试题11 递增矩阵

递增矩阵是指每一行和每一列均从小到大排列矩阵。给你一个递增矩阵A和整数x,设计一个算法在A中查找x,...

  • Tags: 二分法

九章算法面试题10 赛马问题

有25匹马,有一个5个赛道的马场,每场比赛可以决出5匹马的排名,假设每匹马发挥稳定,且不会出现名次相...

  • Tags: 矩阵

九章算法面试题9 前k大的和

初阶:有两个数组A和B,每个数组有k个数,从两个数组中各取一个数加起来可以组成k*k个和,求这些和中...

  • Tags: 矩阵

九章算法面试题8 第k大的数

初阶:有两个数组A和B,假设A和B已经有序(从大到小),求A和B数组中所有数的第K大。进阶:有N台机...

  • Tags: 二分法

九章算法面试题7 分层遍历二叉树

初阶:给一棵二叉树,按照层次进行输出,第一行输出第一层的节点,第二行输出第二层,如此类推。进阶:如果...

  • Tags: 二分法

九章算法面试题6 负载均衡

设计一个用于负载均衡的数据结构,支持加入一台机器,撤出一台机器,在活跃的机器集合中“等概率”随机选中...

  • Tags: 分布式系统

九章算法面试题5 有序数组合并

初阶:合并两个有序数组A和B,使得结果依然有序。进阶:合并两个有序数组A和B,假设A有n个数,B有m...

  • Tags: 二分法

九章算法面试题4 索引比例

估算Baidu和Google的网页索引数量比。你可以在合理的范围内做出一定情况的假设,...

  • Tags: 大数据

九章算法面试题3 找坏球

有12个球,1个没有砝码的天秤。其中有11个球的重量是一样的,另外1个是坏球,和其他球的重量不一样,...

  • Tags: 智力题

九章算法面试题2 抄书问题

有n本书和k个抄写员。要求n本书必须连续的分配给这k个抄写员抄写。也就是说前a1本书分给第一个抄写员...

  • Tags: 动态规划, 二分法

九章算法面试题1 落单的数

有2n+1个数,其中2n个数两两成对,1个数落单,找出这个数。要求O(n)的时间复杂度,O(1)的空...

  • Tags: 二进制


你可能感兴趣的:(leetcode)