A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

第一篇 面试题      
1.1.简介 .................................................................................................. 8
1.2.面试题集合(一) ............................................................................. 8

1.2.1.把二元查找树转变成排序的双向链表 ......................................................... 8
1.2.2.下排每个数都是先前上排那十个数在下排出现的次数.............................11
1.2.3.设计包含 min 函数的栈................................................................................ 14
1.2.4.求子数组的最大和............................................................................................. 20
1.2.5.在二元树中找出和为某一值的所有路径........................................................ 22
1.2.6.Top K 算法详细解析---百度面试................................................................. 29
1.2.7.翻转句子中单词的顺序        ......................................................................... 31
1.2.8.判断整数序列是不是二元查找树的后序遍历结果..................................... 33
1.2.9.查找最小的 K 个元素-使用最大堆................................................................ 35
1.2.10.求二叉树中节点的最大距离................................................................... 37
1.3.面试题集合(二)......................................................................................... 40
1.3.1.求 1+2+…+n ............................................................................................. 40
1.3.2.输入一个单向链表,输出该链表中倒数第 k 个结点............................... 44
1.3.3.输入一个已经按升序排序过的数组和一个数字        .............................. 46
1.3.4.输入一颗二元查找树,将该树转换为它的镜像        .............................. 48
1.3.5.输入一颗二元树,从上往下按层打印树的每个结点,同一层中按照从左往
右的顺序打印              ........................................................................................... 49
1.3.6.在一个字符串中找到第一个只出现一次的字符。如输入 abaccdeff,则输出 b
              ........................................................................................... 52
1.3.7. n 个数字(0,1,…,n-1)形成一个圆圈 .................................................. 53
1.3.8.定义 Fibonacci数列         .................................................................... 58
1.3.9.左移递减数列查找某一个数        .......................................................... 60
1.3.10.对于一个整数矩阵,存在一种运算,对矩阵中任意元素加一时,需要其相
邻(上下左右)某一个元素也加一         ............................................................ 63
1.4.面试题集合(三)         ................................................................................ 73
1.4.1.递归和非递归俩种方法实现二叉树的前序遍历        .............................. 73
1.4.2.请修改 append 函数,利用这个函数实现        ..................................... 78
1.4.3.有 n 个长为 m+1的字符串         .................................................... 82 1.4.4. n 支队伍比赛 ........................................................................................................ 84
1.4.5.求一个矩阵中最大的二维矩阵(元素和最大)         ................................... 86
1.4.6.强大的和谐         ................................................................................. 90
1.4.7.通过交换 a,b中的元素,使[序列 a 元素的和]与[序列 b元素的和]之间的差最小
................................................94
1.4.8.计算 1 到 N的十进制数中 1的出现次数         ...................................... 97
1.4.9.栈的 push、pop序列[数据结构]         .................................................. 99
1.4.10.统计整数二进制表示中 1 的个数        .................................................102
1.5.面试题集合(四)         ...............................................................................104
1.5.1.跳台阶问题         ................................................................................104
1.5.2.左旋转字符串        ..............................................................................105
1.5.3.在字符串中找出连续最长的数字串         .............................................109
1.5.4.链表操作        ..................................................................................... 111
1.5.5.有 4 张红色的牌和 4张蓝色的牌        ................................................ 115
1.5.6.输入两个整数 n和 m,从数列 1,2,3        n中 随意取几个数    .......................... 116
1.5.7.输入一个表示整数的字符串,把该字符串转换成整数并输出        ........ 118
1.5.8.给出一个数列,找出其中最长的单调递减(或递增)子序列        ........121
1.5.9.四对括号可以有多少种匹配排列方式        ...........................................124
1.5.10.输入一个正数 n,输出所有和为 n 连续正数序列         ........................125
1.6.面试题集合(五)         ...............................................................................126
1.6.1.输入一棵二元树的根结点,求该树的深度        ....................................126
1.6.2.输入一个字符串,打印出该字符串中字符的所有排列         .................128
1.6.3.输入一个整数数组,调整数组中数字的顺序,使得所有奇数位于数组的前半部分,所有偶数位于数组的后半部分        
....................................................130
1.6.4.给定链表的头指针和一个结点指针,在 O(1)时间删除该结点         .....132
1.6.5.输入一个链表的头结点,从尾到头反到来输出每个结点的值        ........134
1.6.6.用 C++设计一个不能被继承的类         ................................................136
1.6.7.给定链表的头指针和一个结点指针,在 O(1)时间删除该结点         .....138
1.6.8.一个数组中除了两个数字之外,其余数字均出现了两次        ...............141
1.6.9.两个单向链表,找出它们的第一个公共结点         ...............................142
1.6.10.输入两个字符串,从第一字符串中删除第二个字符串中所有的字符 ...147
1.7.面试题集合(六)         ...............................................................................148
1.7.1.寻找丑数        .....................................................................................148
1.7.2.输入数字 n,按顺序输出从 1 最大的 n 位 10进制数        ...................152
1.7.3.用递归颠倒一个栈        .......................................................................156
1.7.4.从扑克牌中随机抽 5 张牌,判断是不是一个顺子         .......................158
1.7.5.把 n 个骰子扔在地上,所有骰子朝上一面的点数之和为 S         ..........162
1.7.6.排出的所有数字中最小        ................................................................165
1.7.7.数组的旋转         ................................................................................170
1.7.8.给出一个函数来输出一个字符串的所有排列         ...............................171
1.7.9.实现函数 double Power(double base,int exponent)         .........................173
1.7.10.更优的解法:        ..............................................................................175
1.7.11.单列模式        ....................................................................................176
1.8.面试题集合(七)         ...............................................................................178
1.8.1.找出该字符串中对称的子字符串的最大长度         ...............................178
1.8.2.数组中有一个数字出现的次数超过了数组长度的一半,找出这个数字 180 1.8.3.输入二叉树中的两个结点,输出这两个结点在数中最低的共同父结点 180
1.8.4.复杂链表        .....................................................................................187
1.8.5.链表面试题         ................................................................................190
1.8.6.链表和数字的区别在哪里         ...........................................................197
1.8.7. strstr()函数功能 .................................................................................198
1.8.8.一个 int 数组,里面数据无任何限制,要求求出所有这样的数 a,其左
边的数都小于等于它,右边的数都大于等于它        .........................................199
1.8.9.一个文件,内含一千万行字符串,每个字符串在 1K 以内,要求找出所有
相反的串对,如 abc 和 cba。         ...................................................................200
1.8.10.给出一个文件,里面包含两个字段{url、size},即 url为网址,size 为对应
网址访问的次数         .......................................................................................205
1.9.面试题集合(八)         ...............................................................................209
1.9.1.给定一个存放整数的数组,重新排列数组使得数组左边为奇数,右边为偶数
209
1.9.2.用 C 语言实现函数 void * memmove(void *dest,const void *src,size_t n) 210
1.9.3.随机发生器         ................................................................................212
1.9.4.搜索引擎        .....................................................................................212
1.9.5.已知一个字符串,比如 asderwsde,寻找其中的一个子字符串比如 sde的个数,如果没有返回
0,有的话返回子字符串的个数         ...................................216
1.9.6.编写一个程序,把一个有序整数数组放到二叉树中        ......................218
1.9.7.大整数数相乘的问题         ..................................................................220
1.9.8.求最大连续递增数字串        ................................................................221
1.9.9.函数将字符串中的字符'*'移到串的前部分         .....................................222
1.9.10.单链表,编程实现其逆转         ...........................................................223
1.10. 面试题集合(九)        ............................................................................225
1.10.1.删除字符串中的数字并压缩字符串         .............................................225
1.10.2.求两个串中的第一个最长子串(神州数码以前试题)         .................226
1.10.3.不开辟用于交换数据的临时空间,如何完成字符串的逆序         ..........228
1.10.4.求随机数构成的数组中找到长度大于=3的最长的等差数列         ........228
1.10.5.外排序         .......................................................................................230
1.10.6.用递归的方法判断整数组 a[N]是不是升序排列         ..........................232
1.10.7. N 个鸡蛋放到 M个篮子中,篮子不能为空         ................................232
1.10.8. Hash         .........................................................................................234
1.10.9.如何迅速匹配兄弟字符串         ...........................................................242
1.10.10.腾讯数组乘积赋值的问题         ..........................................................243
1.11.面试题集合(十)         ................................................................................244
1.11.1.有一个整数数组,请求出两两之差绝对值最小的值        .....................244
1.11.2.给出一个函数来合并两个字符串 A和 B。字符串 A的后几个字节和字符
串 B 的前几个字节重叠         ............................................................................245
1.11.3.编程实现两个正整数的除法(不能用除法操作符)        .....................250
1.11.4.平面上 N个点,没两个点都确定一条直线,求出斜率最大的那条直线所
通过的两个点        ..........................................................................................251
1.11.5.字符串原地压缩         ........................................................................252
1.11.6.一排 N(最大1M)个正整数+1递增,乱序排列         .......................253
1.11.7.找出被重复的数字        ......................................................................254
1.11.8. Hashtable 和 HashMap 的区别         ....................................................264
1.11.9.用 1、2、2、3、4、5这六个数字,写一个 main 函数,打印出所有不同的排列
268
1.11.10.局部变量、全局变量和静态变量的含义         ....................................269
1.12. 面试题集合(十一)         .........................................................................272
1.12.1.有两个双向循环链表 A,B,知道其头指针为:pHeadA,pHeadB,请写一
函数将两链表中 data 值相同的结点删除        ...................................................272
1.12.2.找出两个字符串中最大公共子字符串,如"abccade","dgcadde"的最大子串为"cad" 274 1.12.3.把十进制数(long型)分别以二进制和十六进制形式输出,不能使用 printf 系列
275
1.12.4. 40 亿个整数         ..............................................................................277
1.12.5. bitmap 减少 hash算法所用空间         ..................................................281
1.12.6.定义一个类似函数的宏,宏运算的结果来表示大于和小于         ..........285
1.12.7.给定一个集合 A         ........................................................................286
1.12.8.已知一个函数 f可以等概率的得到 1-5间的随机数,问怎么等概率的得到
1-7的随机数         ............................................................................................289
1.12.9.判断一个自然数是否是某个数的平方        ...........................................290
1.12.10.一棵排序二叉树,令 f=(最大值+最小值)/2,设计一个算法,找出距离 f值最近、大于 f
值的结点。复杂度如果是 O(n2)则不得分。         .....................291
1.12.11. strstr和 strncmp源码实现         ............................................................294
1.13. 面试题集合(十二)         .........................................................................295
1.13.1.对于从 1到 N的连续整集合合,能划分成两个子集合,且保证每个集
合的数字和是相等        ...................................................................................295
1.13.1.对于从 1到 N的连续整集合合,能划分成两个子集合,且保证每个集
合的数字和是相         .......................................................................................295
1.13.2. Topk         .........................................................................................298
1.13.3. Collection         ...................................................................................301
1.13.4.输入一个矩阵,按照从外向里以顺时针的顺序依次打印出每一个数字 311
1.13.5.求集合的所有子集的算法         ...........................................................314
1.13.6.将一个数中的偶数位 bit 和奇数位 bit 交换         ................................318
1.13.7.二分查找实现        ..............................................................................318
1.13.8.集合合并...........................................................................................322
1.13.9.把求子集运算转换为组合问题         ....................................................323
1.13.10.算法设计        ....................................................................................324
1.14. 面试题集合(十三)         .........................................................................327
1.14.1.各种排序算法        ..............................................................................327
1.15. 面试题集合(十四)         .........................................................................393
1.15.1.判断图里有环        ..............................................................................393
1.15.2.整数的素数和分解问题        ................................................................422
1.15.3.求两个或 N 个数的最大公约数(gcd)和最小公倍数(lcm)的较优算法 .....425
1.16. 面试题集合(十五)         .........................................................................426
1.16.1. ApplicationContext         ......................................................................426
1.16.2. ApplicationContext 事件传播         .......................................................431
1.16.3. mysql有多种存储引擎        ................................................................433
1.16.4.论 MySQL何时使用索引,何时不使用索引         ................................436
1.16.5. SQL多表连接查询实现语句         .....................................................439
1.17. 面试题集合(十六)         .........................................................................442
1.17.1. 12 个高矮不同的人,排成两排,每排必须是从矮到高排列,而且第二排比对
应的第一排的人高,问排列方式有多少种         ..................................................442
1.17.2.毒酒        ............................................................................................448
1.17.3.用代码验证阿里巴巴的一道关于男女比例的面试题        ......................448
1.17.4.金币        ............................................................................................451
1.17.5.海盗        ............................................................................................452
1.17.6. 1024        ..........................................................................................454
1.17.7.最少零钱问题 最少硬币问题         .....................................................455
1.17.8.石子合并        .....................................................................................456
1.18. 面试题集合(十七)         .........................................................................460
1.18.1.生产者-消费者模式         .....................................................................460
1.18.2.动态规划        .....................................................................................466
1.18.3. 01 背包         .....................................................................................472
1.18.4.贪心算法        .....................................................................................477
1.18.5.装箱问题        .....................................................................................482
1.19. 教你如何迅速秒杀掉:99%的海量数据处理面试题         ...........................484



先看本次的面试题目录,需要详细了解面试题,需要回帖下载附件哦,每一道面试题都是老师们精心收集的,用心回帖下载学习哈
游客,如果您要查看本帖隐藏内容请回复

点评

下载不了,,,,,,  发表于 2018-8-5 10:10

523 个回复

倒序浏览
您需要登录后才可以回帖 登录 | 加入黑马