- 博客(5)
- 资源 (76)
- 问答 (1)
- 收藏
- 关注
原创 微软一道面试题
一个整数数列,元素取值可能是0~65535中的任意一个数,相同数值不会重复出现。0是例外,可以反复出现。 请设计一个算法,当你从该数列中随意选取5个数值,判断这5个数值是否连续相邻。 注意: - 5个数值允许是乱序的。比如: 8 7 5 0 6 - 0可以通配任意数值。比如:8 7 5 0 6 中的0可以通配成9或者4 - 0可以多次出现。
2013-08-09 22:21:31 1429
原创 子数组的最大和[算法]HDU1003/HDU1231/找到这些数使得它满足:它是左边的最大值且是右边的最小值
题目:输入一个整形数组,数组里有正数也有负数。数组中连续的一个或多个整数组成一个子数组,每个子数组都有一个和。求所有子数组的和的最大值。要求时间复杂度为O(n)。例如输入的数组为1, -2, 3, 10, -4, 7, 2, -5,和最大的子数组为3, 10, -4, 7, 2,因此输出为该子数组的和18。要求最大的子数组的和.我们可以想象,当遍历到其中一个数A[i],如果A[i]之前
2013-08-07 11:09:03 1954
原创 实现一个栈,使push,pop,min操作只需要o(1)时间
思路: push,pop操作在常量时间复杂度内完成,没有问题,但是,min操作需要在常量时间复杂度内完成,一开始很容易想到在栈中保存一个变量min,用来保存最小值,那么如果需要min()操作时,只需要查min变量的值即可.这个思路看起来不错,但是,有一个致命的缺陷,那就只是,如果只保存一个min变量,那么当min也需要弹栈的时候,那么栈中的min也需要用次二小的值更新,但是,此
2013-08-07 10:51:58 3822
原创 微软面试题:编程实现两个正整数的除法,当然不能用除法操作符。
思路比较简单,效率似乎并不太理想,先放在这里,以后再改良.#includeusing namespace std;int Div1(int x, int y)//若x >>> y(远大于)时,效率差{ int ans = 0; while(x >= y) { x -= y; ++ans; } return ans;
2013-08-06 18:26:16 1635
原创 希尔(shell)排序-插入排序的扩展
希尔排序是插入排序的一种扩展和延伸.在希尔排序之前,有必要先说一下插入排序.插入排序的工作原理:1.从第2号元素开始扫描,直到最后一个元素.2.当扫描到i号元素的时候,假定前边0,1,2,3...i-1号元素都已经有序.用挖坑填数的方法,将A[i]号元素从数组中挖出来,保存在key中,依次比较A[i-1],A[i-2]....的值,如果都比key大,则后移,直到找到key的最终元素,就
2013-08-01 15:22:18 1501
codeblocks13.12汉化包
2014-12-19
带mingw的codeblocks-13.12安装版
2014-12-18
AC自动机-Set Matching and Aho-Corasick Algorithm
2014-03-07
wrapper-windows-x86-32-3.5.30.zip
2017-08-07
Wpf MVVM最简单的一个例子(无Model)
2016-01-27
Log4cplus使用指南.pdf
2015-01-18
Chromium ppapi开发有关问题?
2015-04-08
TA创建的收藏夹 TA关注的收藏夹
TA关注的人