自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

转载 工作之后十不要

 工作以后十不要   第一:不要认为停留在心灵的舒适区域内是可以原谅的。    每个人都有一个舒适区域,在这个区域内是很自我的,不愿意被打扰,不愿意被push,不愿意和陌生的面孔交谈,不愿意被人指责,不愿意按照规定的时限做事,不愿意主动的去关心别人,不愿意去思考别人还有什么没有想到。这在学生时代是很容易被理解的,有时候这样的同学还跟“冷酷”“个性”这些字眼沾边,算作是褒义。然而相反,在

2008-09-23 22:09:00 549

原创 可变参数函数

由于工作需要,最近写了一个可变参数的函数,贴在下面,以后今后参考。StringPointerStringPointer::concat(size_t nszNum, StringPointer szString, ...){    szString;    //    //  get owned string length of this string pointer    //    regis

2008-09-23 15:28:00 494

原创 我的理论

大鱼吃小鱼,小鱼吃虾米。在这个竞争激烈的世界里,如果不想被吃掉,就要努力做大鱼。虽然很累,但也值得。

2008-09-20 10:04:00 479

转载 等待

原文: 等待  这是个浮躁的人们最不喜欢的话题,本来不想说这个话题,因为会引起太多的争论,而我又无意和人争论这些,但是考虑到对于职业生涯的长久规划,这是一个躲避不了的话题,还是决定写一写,不爱看的请离开吧。 并不是每次穿红灯都会被汽车撞,并不是每个罪犯都会被抓到,并不是每个错误都会被惩罚,并不是每个贪官都会被枪毙,并不是你的每一份努力都会得到回报,并不是你的每一次坚持都会有

2008-09-15 20:44:00 493

原创 微软windows live search面试记

HR通知面试会有4轮,3轮tech interview外加一轮lunch interview. 早晨9点10分就到港汇的微软的office了,和我一起参加面试的还有另外2个男生和1个女生。其中那位女生是面试SDET的,和我们不一起。她被前台带到了另外的地方。剩下的我们三个人是面试SDE的,就被分别安排到了不同的office由不同的lead来面试。早晨精神不错,感谢我的雀巢咖啡。 第一轮和第二轮的t

2008-09-11 21:19:00 1494

转载 fibonacci 数列的非递归算法

fibonacci 数列定义:n = 1,2 时,fib(n) = 1n > 2 时,fib(n) = fib(n-2) + fib(n-1)如果用递归计算则包含非常多的重复计算量,因此不可考虑。换一个思路,只要从 f(1) 计算到 f(n-1),那么这个过程是不会有重复计算的。很多算法用了数组来保存 f(1)到 f(n) 的值,如果 n 很大,则这个空间开销会很大,好处是在需要计算很

2008-09-07 22:24:00 728

转载 一位成功女性的七大秘诀

苏珊·艾维是第一位领导一家美国烟草公司的女性。她带领财富500强公司之一的雷诺兹公司成功地在2004年7月完成了R.J.雷诺兹公司和布朗与威廉姆森烟草公司的合并。  艾维是于1981年在布朗与威廉姆森烟草公司作为一名销售代表起家的,后来成为该公司的首席执行官。2004年,在R.J.雷诺兹公司和布朗与威廉姆森烟草公司合并后,她成为雷诺兹美国有限公司的首席执行官。2005年1月,她被提升为该公司董事长

2008-09-07 20:03:00 688

转载 用两个栈实现一个队列

题目:某队列的声明如下:templatetypename T> class CQueue{public:     CQueue() {}     ~CQueue() {}      void appendTail(const T& node);  // append a element to tail     void deleteHea

2008-09-07 17:54:00 1564

原创 软件的性能着实很重要

我已经连着3个月在做performance的工作了,performance的工作做起来要比写代码难得多。首先我需要找到影响整个project性能的bottleneck,然后还要提供解决方案。提出解决方案不难,重要的是提出better的性能佳的解决方案可真不容易了。所以写代码的当初还是不能乱写的,同样可以达到目的的算法,需要选出最合适的,性能最好的算法来用,这样才能保证整个project的性能良好。

2008-09-07 17:27:00 557

原创 研究算法

今天周末,在网上搜寻一些blog来看, 发现了很多经典的算法题目,于是自己动手研究了一番,觉得收获颇大。比以前看一天电视的生活充实多了。恩,还是得学习啊~      

2008-09-07 17:22:00 543

转载 输入一个整数,求该整数的二进制表达中有多少个1

题目:输入一个整数,求该整数的二进制表达中有多少个1。例如输入10,由于其二进制表示为1010,有两个1,因此输出2。分析:这是一道很基本的考查位运算的面试题。包括微软在内的很多公司都曾采用过这道题。一个很基本的想法是,我们先判断整数的最右边一位是不是1。接着把整数右移一位,原来处于右边第二位的数字现在被移到第一位了,再判断是不是1。这样每次移动一位,直到这个整数变成0为止。现在的

2008-09-07 17:03:00 4941

转载 输入一个正数n,输出所有和为n连续正数序列。

题目:输入一个正数n,输出所有和为n连续正数序列。例如输入15,由于1+2+3+4+5=4+5+6=7+8=15,所以输出3个连续序列1-5、4-6和7-8。分析:这是网易的一道面试题。这道题和本面试题系列的第10题有些类似。我们用两个数small和big分别表示序列的最小值和最大值。首先把small初始化为1,big初始化为2。如果从small到big的序列的和大

2008-09-07 15:34:00 1028

转载 调整数组顺序使奇数位于偶数前面

题目:输入一个整数数组,调整数组中数字的顺序,使得所有奇数位于数组的前半部分,所有偶数位于数组的后半部分。要求时间复杂度为O(n)。分析:如果不考虑时间复杂度,最简单的思路应该是从头扫描这个数组,每碰到一个偶数时,拿出这个数字,并把位于这个数字后面的所有数字往前挪动一位。挪完之后在数组的末尾有一个空位,这时把该偶数放入这个空位。由于碰到一个偶数,需要移动O(n)个数字,因此总的时间复杂

2008-09-07 13:59:00 1067

转载 一个整型数组里除了两个数字之外,其他的数字都出现了两次。请写程序找出这两个只出现一次的数字

题目:一个整型数组里除了两个数字之外,其他的数字都出现了两次。请写程序找出这两个只出现一次的数字。要求时间复杂度是O(n),空间复杂度是O(1)。分析:这是一道很新颖的关于位运算的面试题。首先我们考虑这个问题的一个简单版本:一个数组里除了一个数字之外,其他的数字都出现了两次。请写程序找出这个只出现一次的数字。这个题目的突破口在哪里?题目为

2008-09-07 11:35:00 3674 1

转载 算法的力量——李开复

李开复:算法的力量算法是计算机科学领域最重要的基石之一,但却受到了国内一些程序员的冷落。许多学生看到一些公司在招聘时要求的编程语言五花八门就产生了一种误解,认为学计算机就是学各种编程语言,或者认为,学习最新的语言、技术、标准就是最好的铺路方法。其实大家都被这些公司误导了。编程语言虽然该学,但是学习计算机算法和理论更重要,因为计算机算法和理论更重要,因为计算机语言和开发平台日新月异,但万变不离其

2008-09-07 11:14:00 1112 1

转载 回溯算法之0-1背包问题

0-1背包问题:给定n种物品和一背包.物品i的重量是wi, 其价值为ui,背包的容量为C. 问如何选择装入背包的物品,使得装入背包中物品的总价值最大? 分析: 0-1背包是子集合选取问题,一般情况下0-1背包是个NP问题. 第一步 确定解空间:装入哪几种物品 第二步 确定易于搜索的解空间结构: 可以用数组p,w分别表示各个物品价值和重量。 用数组x记录,是否选种物品 第三步 以深度优先

2008-09-07 10:59:00 850

转载 回溯算法之八皇后问题

八皇后问题是一个古老而著名的问题,是回溯算法的典型例题。该问题是十九世纪著名的数学家高斯1850年提出:在8X8格的国际象棋上摆放八个皇后,使其不能互相攻击,即任意两个皇后都不能处于同一行、同一列或同一斜线上.问题分析:第一步 定义问题的解空间这个问题解空间就是8个皇后在棋盘中的位置.第二步 定义解空间的结构可以使用8*8的数组,但由于任意两个皇后都不能在同行,我们可以用数组下

2008-09-07 10:39:00 590

转载 回溯算法的框架和基础

回溯法其实也是一种搜索算法,它可以方便的搜索解空间。 回溯法解题通常可以从以下三步入手: 1、针对问题,定义解空间 2、确定易于搜索的解空间结构 3、以深度优先的方式搜索解空间,并在搜索的过程中进行剪枝 回溯法通常在解空间树上进行搜索,而解空间树通常有子集树和排列树。 针对这两个问题,算法的框架基本如下: 用回溯法搜索子集合树的一般框架: Cpp代码 void back

2008-09-07 10:35:00 1107

转载 给定链表的头指针和一个结点指针,在O(1) 时间删除该结点

题目:给定链表的头指针和一个结点指针,在O(1)时间删除该结点。链表结点的定义如下:struct ListNode{     int        m_nKey;     ListNode*  m_pNext;};函数的声明如下:void DeleteNode(ListNod

2008-09-07 10:21:00 2102

转载 两个单向链表,找出它们的第一个公共结点

题目:两个单向链表,找出它们的第一个公共结点。链表的结点定义为:struct ListNode{     int         m_nKey;     ListNode*   m_pNext;};分析:这是一道微软的面试题。微软非常喜欢与链表相关的题目,因此在微软的面试

2008-09-07 09:32:00 842

原创 我的CSDN博客开张

                热烈庆祝我的CSDN博客开张啦~~~~        看到很多很多勤奋的IT工作者都很努力地耕耘着自己的CSDN,我怎么能落后呢?唉,虽然已经非常的,非常的落后了。汗!        我跑的如蜗牛一般慢,什么时候能赶上别人的磁悬浮列车呢?        但是我相信,如果努力。。。。        某一天,我会变成爬的最快的那只蜗牛哦。

2008-09-06 22:30:00 437

空空如也

空空如也

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

TA关注的人

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