码迷,mamicode.com
首页 >  
搜索关键字:剑指offer 面试题17    ( 3728个结果
[LeetCode] Number of Digit One
The following idea is taken from a book named 《剑指offer》 published in China.Supposen = 271, it then breaks[1, 271]into[1, 71]and[72, 271]. For[72, 271]...
分类:其他好文   时间:2015-07-08 02:07:20    阅读次数:149
【剑指offer】面试题31:连续子数组的最大和
题目:输入一个整型数组,数组里有正数也由负数。数组中一个或者连续的多个整数组成一个子数组。求所有子数组的和的最大值。要求时间复杂度为 O(n)。例如输入的数组为{1,-2,3,10,-4,7,2,-5},其最大的子数组为{3,10,-4,7,2},因此所有子数组的和的最大值为 18。应用动态规划法:...
分类:编程语言   时间:2015-07-07 22:44:50    阅读次数:190
【剑指offer】面试题29:数组中出现次数超过一半的数字
题目:数组中一个数字出现的次数超过数组长度的一半,请找出这个数字。例如输入一个长度为 9 的数组{1,2,3,2,2,2,5,4,2}。由于数字 2 在数组中出现了 5 次,超过数组长度的一半,因此输出 2. 这道题很多人都会想到对这个数组进行排序。那么在已排序的数组中,位于中间位置的数字就是超过数...
分类:编程语言   时间:2015-07-07 21:14:18    阅读次数:170
java构造函数修饰符
今天看了剑指offer中的第二章-面试需要的基础知识,对其中的一段C#面试代码,比较感兴趣,想着能否给改成java,结果没改成,出现了问题,本文是针对这一点来总结一下,下面是C#与java代码,但是在eclipse环境下,java代码如此改写,编译器提醒构造函数有问题,究其原因,问题是由java的构...
分类:编程语言   时间:2015-07-07 19:14:33    阅读次数:237
(剑指Offer)面试题8:旋转数组的最小数字
题目:把一个数组最开始的若干个元素搬到数组的末尾,我们称之为数组的旋转。输入一个递增排序的数组的一个旋转,输出旋转数组的最小元素。例如数组{3,4,5,1,2}为{1,2,3,4,5}的一个旋转,该数组的最小值为1。思路:1、遍历数组,找到数组的最小值,时间复杂度O(n);2、二分查找,时间复杂度O...
分类:编程语言   时间:2015-07-07 18:57:16    阅读次数:140
【剑指Offer学习】【面试题38:数字在排序数组中出现的次数】
题目:统计一个数字:在排序数组中出现的次数。举例说明例如输入排序数组{ 1, 2, 3, 3, 3, 3, 4, 5}和数字3 ,由于3 在这个数组中出现了4 次,因此输出4 。解题思路  利用改进的二分算法。   如何用二分查找算法在数组中找到第一个k,二分查找算法总是先拿数组中间的数字和k作比较。如果中间的数字比k大,那么k只有可能出现在数组的前半段,下一轮我们只在数组的前半段查找就可以了。...
分类:编程语言   时间:2015-07-06 12:26:35    阅读次数:190
【剑指Offer学习】【面试题40:数组中只出现一次的数字】
题目:一个整型数组里除了两个数字之外,其他的数字都出现了两次,请写程序找出这两个只出现一次的数字。要求时间复杂度是O(n),空间复杂度是O(1)。我们想到异或运算的一个性质:任何一个数字异或它自己都等于0。也就是说, 如果我们从头到尾依次异或数组中的每一个数字,那么最终的结果刚好是那个只出现一次的数字,因为那些成对出现两次的数字全部在异或中抵消了。...
分类:编程语言   时间:2015-07-06 12:21:17    阅读次数:139
剑指offer----------------青蛙跳台阶
题目描述一只青蛙一次可以跳上1级台阶,也可以跳上2级。求该青蛙跳上一个n级的台阶总共有多少种跳法。思路:把N阶台阶的跳法看成是n的函数,记为f(n)。当n=2时,有两级台阶,有两种跳法:一个是分两次跳,每次跳1级,另一种是一次跳2级。当n>2时,第一次跳有两种选择,一是一次跳一级,此时跳法数目等于后...
分类:其他好文   时间:2015-07-05 16:15:52    阅读次数:109
【剑指Offer学习】【面试题36:数组中的逆序对】
题目:在数组中的两个数字如果前面一个数字大于后面的数字,则这两个数字组成一个逆序对。输入一个数组,求出这个数组中的逆序对的总数。 解题思路: 第一种:直接求解   第二种:分析法...
分类:编程语言   时间:2015-07-05 09:32:55    阅读次数:136
【剑指Offer学习】【面试题33:把数组排成最小的数】
题目:输入一个正整数数组,把数组里所有数字拼接起来排成一个数,打印能拼接出的所有数字中最小的一个。 解题思路: 第一种:直观解法先求出这个数组中所有数字的全排列,然后把每个排列拼起来,最后求出拼起来的数字的最大值。 第二种:排序解法找到一个排序规则,数组根据这个规则排序之后能排成一个最小的数字。...
分类:编程语言   时间:2015-07-04 09:39:58    阅读次数:178
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!