摘要:http://www.cnblogs.com/nailperry/p/4752987.html
阅读全文
摘要:两个栈,始终保证两个栈的数值数量一样 push的时候 一个正常存储值, 另一个比较data与peek()的值,哪个小存储哪个
阅读全文
摘要:http://blog.csdn.net/libing13820393394/article/details/45072029?ref=myread 输入一个字符串,按字典序打印出该字符串中字符的所有排列。例如输入字符串abc,则打印出由字符a,b,c所能排列出来的所有字符串abc,acb,bac,
阅读全文
摘要:http://wiki.jikexueyuan.com/project/for-offer/question-forty-one.html 例如输入 15,由于 1+2+3+4+5=4+5+6=7+8=15,所以结果打出 3 个连续序列 1~5、4~6 和 7~8 考虑用两个数 small 和 bi
阅读全文
摘要:http://www.cnblogs.com/tobemaster/p/5911352.html 输入一个正整数数组,把数组里所有数字拼接起来排成一个数,打印能拼接出的所有数字中最小的一个。例如输入数组{3,32,321},则打印出这三个数字能排成的最小数字为321323。 自己定义规则:s1+s2
阅读全文
摘要:http://blog.csdn.net/hll174/article/details/51001253 请实现一个函数用来匹配包括'.'和'*'的正则表达式。模式中的字符'.'表示任意一个字符,而'*'表示它前面的字符可以出现任意次(包含0次)。 在本题中,匹配是指字符串的所有字符匹配整个模式。例
阅读全文
摘要:http://www.cnblogs.com/coffy/p/5896541.html 在数组中的两个数字,如果前面一个数字大于后面的数字,则这两个数字组成一个逆序对。输入一个数组,求出这个数组中的逆序对的总数: 如数组{7,5,6,4},逆序对总共有5对,{7,5},{7,6},{7,4},{5,
阅读全文
摘要:0~n-1个人,循环从0到m-1报数,最后剩一个人 用两个list,一个保存没报数的人,一个为空;number记录下一次要报的数 一次循环中倒两次,每次循环都从list1开始: 第一次,把list1中的人倒到list2;number为m-1时,把number设为0,且list2不要这个人 倒完后清空
阅读全文
摘要:http://wiki.jikexueyuan.com/project/for-offer/question-forty-four.html 题目:从扑克牌中随机抽 5 张牌,判断是不是一个顺子, 即这 5 张牌是不是连续的。2~10 为数字本身, A 为 1。 J 为 11、Q 为 12、 为 1
阅读全文
摘要:http://www.cnblogs.com/wxdjss/p/5448990.html 给定一个数组A[0,1,...,n-1],请构建一个数组B[0,1,...,n-1],其中B中的元素B[i]=A[0]*A[1]*...*A[i-1]*A[i+1]*...*A[n-1]。不能使用除法。 不乘第
阅读全文
摘要:其实就是斐波那契数列 或者跳台阶,根据前面的值确定后面的可能性 我们可以用2*1的小矩形横着或者竖着去覆盖更大的矩形。请问用n个2*1的小矩形无重叠地覆盖一个2*n的大矩形,总共有多少种方法? 最后只能是竖着放一个或者横着放两个 f(2)=1+f(2-1); f(3) = f(3-2)+f(3-1)
阅读全文
摘要:输入两个整数序列,第一个序列表示栈的压入顺序,请判断第二个序列是否为该栈的弹出顺序。假设压入栈的所有数字均不相等。例如序列1,2,3,4,5是某栈的压入顺序,序列4,5,3,2,1是该压栈序列对应的一个弹出序列,但4,3,5,1,2就不可能是该压栈序列的弹出序列。(注意:这两个序列的长度是相等的)
阅读全文
摘要:输入一个递增排序的数组和一个数字S,在数组中查找两个数,是的他们的和正好是S,如果有多对数字的和等于S,输出两个数的乘积最小的。 数列满足递增,设两个头尾两个指针i和j, 若ai + aj == sum,就是答案(相差越远乘积越小) 若ai + aj > sum,aj肯定不是答案之一(前面已得出 i
阅读全文
摘要:http://blog.csdn.net/qq_27703417/article/details/70948850 数组中有一个数字出现的次数超过数组长度的一半,请找出这个数字。例如输入一个长度为9的数组{1,2,3,2,2,2,5,4,2}。由于数字2在数组中出现了5次,超过数组长度的一半,因此输
阅读全文
摘要:http://blog.csdn.net/baoendemao/article/details/39899367 把只包含因子2、3和5的数称作丑数(Ugly Number)。例如6、8都是丑数,但14不是,因为它包含因子7。 习惯上我们把1当做是第一个丑数。求按从小到大的顺序的第N个丑数。 丑数应
阅读全文
摘要:输入一个矩阵,按照从外向里以顺时针的顺序依次打印出每一个数字,例如,如果输入如下矩阵: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 则依次打印出数字1,2,3,4,8,12,16,15,14,13,9,5,6,7,11,10. 主函数只管控制数组循环打印的条件,及辅
阅读全文
摘要:输入一个整数数组,实现一个函数来调整该数组中数字的顺序,使得所有的奇数位于数组的前半部分,所有的偶数位于位于数组的后半部分, 如果,保证奇数和奇数,偶数和偶数之间的相对位置不变。用两个临时list,一个保存奇数,一个保存偶数,然后合并 如果不需要顺序,则用快速排序, 前面的指针找偶数,后面的指针找奇
阅读全文
摘要:输入n个整数,找出其中最小的K个数。例如输入4,5,1,6,2,7,3,8这8个数字,则最小的4个数字是1,2,3,4,。 快排序的思想就是把a[begin] 交换到它属于的第k位 利用快速排序划分的思想,每一次划分就会有一个数字位于以数组从小到达排列的的最终位置index; 位于index左边的数
阅读全文
摘要:http://www.cnblogs.com/wxisme/p/5236258.html 把一个数组最开始的若干个元素搬到数组的末尾,我们称之为数组的旋转。 输入一个非递减排序的数组的一个旋转,输出旋转数组的最小元素。 例如数组{3,4,5,1,2}为{1,2,3,4,5}的一个旋转,该数组的最小值
阅读全文