自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(16)
  • 收藏
  • 关注

原创 面试题(2)——求子数组最大和

题目来源: http://blog.youkuaiyun.com/v_july_v 题目: 输入一个整形数组,里有正也负。 数组中连续的一个或多整成子,每都有和。 求所有子数组的和最大值。要时间复杂度为 O(n)。 例如输入的数组为1,-2,3,10,-4,7,2,-5 ,和最大 的子数组为3,10,-4,7,2 因此输出为该子数组的和 18 。 #include using

2013-04-23 21:22:42 385

原创 面试题(1)——把二叉树变为排序的双向链表

解题思路参考博客:http://blog.youkuaiyun.com/v_july_v, 表示感谢 1.把二元查找树转变成排序的双向链表(树)  题目: 输入一棵二元查找树,将该二元查找树转换成一个排序的双向链表。 要求不能创建任何新的结点,只调整指针的指向。    10   / /   6  14  / / / / 4  8 12 16  转换成双向链表 4=6=8=10=12=

2013-04-23 15:42:51 686

转载 最长回文子串

如何在O(n)时间内处理字符串以每个位置为中心的最长回文。这里转载一个Manacher算法的论文翻译。 原文地址: http://zhuhongcheng.wordpress.com/2009/08/02/a-simple-linear-time-algorithm-for-finding-longest-palindrome-sub-string/     其实原文说得是比较清楚的,只是英

2013-04-22 14:34:10 349

转载 数值的整数次方

题目:实现函数double Power(double base, int exponent),求base的exponent次方。不需要考虑溢出。 分析:这是一道看起来很简单的问题。可能有不少的人在看到题目后30秒写出如下的代码: double Power(double base, int exponent) {       double result = 1.0;       for(i

2013-04-22 13:43:06 452

转载 寻找第1500个丑数

转自:http://blog.sina.com.cn/s/blog_9dfc6f5f01015nu7.html 诺西笔试最后一道题,题意: 把只包含质因子2、3和5的数称作丑数(Ugly Number),例如:2,3,4,5,6,8,9,10,12,15,等,习惯上我们把1当做是第一个丑数。 写一个高效算法,返回第n个丑数。 最普通(也最耗时)的做法是从1开始遍历,然后判断这个

2013-04-22 11:05:09 548

转载 虚函数及继承

原文:http://blog.chinaunix.net/uid-25132162-id-1564955.html 1、空类,空类单继承,空类多继承的sizeof #include iostream> using namespace std; class Base1 { }; class Base2 {

2013-04-18 17:34:36 711

转载 C++中设计一个类,使其不能继承

java中有一种类不能被继承,那就是final类.而C++中没有final类。       C++要实现一个不能被继承的类有很多方法. 主要的思路就是使子类不能构造父类的部分,这样子类就没有办法实例化整个子类.这样就限制了子类的继承. 所以我们可以将父类的构造函数声明成为私有的,但是这样父类不就不能实例化,继续思考、、、    我们可以利用友员不能被继承的特性!    首先假设CPare

2013-04-18 15:33:55 360

转载 最长公共子序列

最长公共子序列与最长公共子串的区别在于最长公共子序列不要求在原字符串中是连续的,比如ADE和ABCDE的最长公共子序列是ADE。 我们用动态规划的方法来思考这个问题如是求解。首先要找到状态转移方程: 等号约定,C1是S1的最右侧字符,C2是S2的最右侧字符,S1‘是从S1中去除C1的部分,S2'是从S2中去除C2的部分。 LCS(S1,S2)等于下列3项的最大者: (1)L

2013-04-18 14:56:32 412

转载 最长公共子串LCS

找两个字符串的最长公共子串,这个子串要求在原字符串中是连续的。其实这又是一个序贯决策问题,可以用动态规划来求解。我们采用一个二维矩阵来记录中间的结果。这个二维矩阵怎么构造呢?直接举个例子吧:"bab"和"caba"(当然我们现在一眼就可以看出来最长公共子串是"ba"或"ab")    b  a  b c  0  0  0 a  0  1  0 b  1  0  1 a

2013-04-18 14:55:43 424

转载 一个数组是由一个递减数列左移若干位形成的,比如{4,3,2,1,6,5}是由{6,5,4,3,2,1}左移两位形成的,在这种数组中查找某一个数

原文:http://blog.youkuaiyun.com/wuwuwuwuwuwuwuwu/article/details/8513844copyright@nciaebupt 转载请注明出处 题目:一个数组是由一个递减数列左移若干位形成的,比如{4,3,2,1,6,5}是由{6,5,4,3,2,1}左移两位形成的,在这种数组中查找某一个数。 分析:由于数组是由一个递减数列左移若干位形成的,所以将数组以中间

2013-04-18 11:12:37 640

转载 动态规划——数组中最长递减子序列

原文链接:http://blog.youkuaiyun.com/wumuzi520/article/details/7378306 求一个数组的最长递减子序列比如{9,4,3,2,5,4,3,2}的最长递减子序列为{9,5,4,3,2} 分析:典型的动态规划题目,对每一个数计算由它开始的最大递减子序列的个数,并存放到一张映射表中。例如对数组a[n]有 …… 然后

2013-04-18 10:59:03 903

原创 统计一个数中1的个数

#include #include using namespace std; main() { int count = 0; int m = 9999; while(m){ count++; m = m & (m-1); } } 比如判断一个数是否为2的N次方,可以直

2013-04-09 21:46:18 492

转载 已知二叉树的中序和后序求前序

原文:http://blog.youkuaiyun.com/wuchuanpingstone/article/details/6860453 例子,后序遍历为 gbdehfca,中序遍历为 dgbaechf  后序遍历中的最后一个元素是根节点,a,然后查找中序中a的位置  把中序遍历分成 dgb a echf,而因为节点个数要对应  后序遍历分为 gbd ehfc a,gbd为左子树,

2013-04-08 09:39:47 792

转载 C++中引用和指针的区别

下面用通俗易懂的话来概述一下: 指针-对于一个类型T,T*就是指向T的指针类型,也即一个T*类型的变量能够保存一个T对象的地址,而类型T是可以加一些限定词的,如const、volatile等等。见下图,所示指针的含义: 引用-引用是一个对象的别名,主要用于函数参数和返回值类型,符号X&表示X类型的引用。见下图,所示引用的含义: 2、指针和引用的区别

2013-04-08 09:38:06 343

转载 C语言 让我头晕的值传递与址传递

原文:http://blog.youkuaiyun.com/the_fire/article/details/4267058 c语言中实参变量和形参变量之间的数据传递是单向的“值传递”方式。指针变量作函数参数也要最循这一规则。调用函数不可能改变实参指针变量的值,但可以改变实参指针变量所指变量的值。 本来挺头晕的,后来搜着了一片文章,顿悟! 来源(http://blog.chinaunix.net/u1/

2013-04-08 09:35:39 425

转载 常用的排序算法的时间复杂度和空间复杂度

常用的排序算法的时间复杂度和空间复杂度 排序法 最差时间分析 平均时间复杂度 稳定度 空间复杂度 冒泡排序 O(n2) O(n2) 稳定 O(1) 快速排序 O(n2) O(n*log2n) 不稳定 O(log2n)~O(n) 选择排序 O(n2) O(n2) 稳定 O(1) 二叉树排序 O(n

2013-04-08 09:32:37 382

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除