自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

百意人生

C C++ 算法 编程珠玑 算法导论 微软面试心得 计算机编程艺术 机器学习

  • 博客(26)
  • 收藏
  • 关注

原创 红黑树的创建+线索化+性质检验+笔画输入法

本文红黑树的实现参考《算法导论》第二版。写此算法之前,发现网络上很多版本均存在这样那样的错误,于是就自己实现了一个,用于做中文输入法。《导论》2的算法描述省略了很多情况,故不能直接拿来用。文中的代码已全部补齐。代码内容包括红黑树的创建(左旋,右旋,插入调整),中序线索化红黑树(参考严文敏的《数据结构》),及红黑树的性质检测。程序中读取的测试文件是笔画输入法的笔画笔顺及对应的汉字。下面是源程

2013-02-05 14:16:41 1037

原创 codeforces 俄罗斯季度决赛题目sequence解答

原题大意如下:用两种操作产生数字序列:加倍和数字排序。数字排序就是升序方式排列数字,如数值6532,排列后的结果是2356。序列都是从1开始,序列前15个数值时1 2 4 8 16 23 46 29 58 116 223 446 289 578 1156。请编程算出第n个序列中的数值是什么。1分析:由于n的上界很大,如果逐一计算,一定不现实。因为它涉及大数据加法和超大数

2012-11-15 16:37:03 864

原创 codeforces上解题感受

这两天找个到了个程序比赛的网站:www.codeforces.com该网站最大的好处是,可以看大家的源代码,这对个人的进步很重要。通过这两天在该网站的学习我认识到:1.  一般题目都存在多种解法;2.  不同的人看问题看到的方面不同,导致解法不同。3. 同一问题,使用不同编程语言的人,看问题的思想不同,在算法设计上也会不同。4. 有C程序员容易把程序写的复杂,C++程序员更

2012-11-14 03:01:31 3957

原创 解题报告 codeforces 242A

原题链接如下:http://www.codeforces.com/problemset/problem/242/A这题比较简单,但是这题给我个启示:不要时时苛求算法,有时性能稍逊一点,方法则简单很多,更容易理解。先给出一个复杂的解答(该方法的好处是找清了所有规律,让运算时间最省):#include int main(){int a, b, x, y,

2012-11-13 18:31:34 902

原创 解题报告 codeforces 242B

对于题目我不在此翻译,只给出链接。原题目链接如下:http://codeforces.com/problemset/problem/242/B解这小道题目让我大费周折。主要原因是轻视了。人一轻敌,思维就不缜密。自信满满,从而易有忽略之处,还不容易查出。但从这道题目,我也看出自己的确有算法的潜质:我的解是最优的,所用内存最少——别人的答案中大都使用了数据结构存储输入的端点值,我没有存

2012-11-12 23:55:35 1525

原创 韩信点兵算法解析

关于韩信点兵的叙述,大家可以看 http://baike.baidu.com/view/30671.htm这类问题,我想说,没有想象中的难!原来做题,总是想找更简单的,其实都是要经过枚举才能找到答案的,只不过枚举是有技巧的。这个问题给我们一个启发,就是条件合并!就韩信点兵这题来讲,就是怎样把3, 5, 7 的余数,化为一个模3 * 5 * 7 的余数。因此这个最小数一定不大于3 *

2012-11-11 22:55:30 23180

原创 兼职创业在路上

很久很久就有创业的冲动。。。很久很久就有创业的想法。。。却一直没付诸实践!前几天见了一个正在创业的朋友,感觉他们都能做,我一样可以!现在做起事情来充满激情!这几天,深入了解了hustoj,ubuntu下搭建了PHP的开发环境,自己有配置了svn server方便代码管理以前一直感觉我在公司做的事情很杂,价值不大。到了创业的时候发现:大多数技术都能用得到:只会编程,你就搞不定

2012-10-25 07:26:37 890

原创 我对创业的再认识

昨天又一次涌动出创业的想法:要为程序员做点什么.以前,我总是想创业需要前沿的技术,需要多少多少资源.要创就创世界上新颖的公司.要赚多少多少钱.其实不然.创业,首先是你能给社会上带来什么,有人真正需要吗?也就是你的价值所在.创业,也不一定是要最前沿的技术,所谓适合的就是最好的.我这次创业的想法,就是受到IT培训尤其是IT网络培训及博客的分享性质等启发,决定为程序员的成长贡献一份力量.

2012-10-18 07:19:14 951

原创 编程之美——求二进制数中1的个数

文中讲了五种方法:1. 循环利用除法和模运算。该方法最容易想到。可谓没有技术含量的。2. 循环利用位移和按位与。用位操作代替算术运算,提高效率。3. 只考虑数字中的1。有经验规律知:对于2的方幂N与N-1取与为0.因而,可以利用该规律想法怎么把原数字变为0,经过的步数就是1的个数。如果没有相应的经验或常识,该方法不容易想到。4. 利用分支操作。该方法速度并不快。但提供了一个思路:利

2012-10-17 10:34:07 1321 2

原创 读一位作者的微软面试心得想到的

原文链接:http://blog.youkuaiyun.com/sunnyskyliu/article/details/8042676从这篇文章中,我学到了细节,完美和自我定位。下面分别谈一谈:从我的自身情况来看,我也没有学历优势,没有经验优势,没有年龄优势,可是我想进入顶尖的IT公司做机器学习算法,怎么办呢!1. 注重细节。编程一定要注意细心,考虑的全面,少出BUG。也就是说,平时要多动手写

2012-10-17 03:32:09 1211

原创 计算机编程艺术[排序部分]阅读感想

当着手解决一个新问题时,先找某些相当明显的解决方法,然后再试图改进它,往往是明智的。 为什么会有这么多种排序算法。因为每种方法都有其优缺点,对于某些数据和硬件配置来说,它有可能超过其他的方法。目前许多最好的方法,都是针对特定的机器,根据特定的目的,对特定对象进行排序所得到的。 计数排序:对元素两两比较,直接确定元素位置。需要一个同样大小的辅助数组。分布计数排序:假设元素分布

2012-10-16 05:41:06 1324 1

原创 把M位的2^M种不同的0-1串按圆排列划分(3)终结

接上篇对循环的解析原理就是把n分解成n个数相加的种类。对循环的解析如下(以M=6为例):上篇的杨辉三角数是:1,6,15,20,15,6,1对应的1的个数是0,1,2,3,4,5,6由于0和1的对称性,只需分析1的个数是0,1,2,3的情况。0个1,自然只有一个,自成一组1个1的情况,只能分解成1为1,因而这个循环中只有一个特征串:100000,可以表示6个串2个1

2012-10-15 15:23:53 1140

原创 把M位的2^M种不同的0-1串按圆排列划分(2)之再思考

上一篇忘了讲到:从M位中取出n位的分布规律符合杨辉三角数的分布规律。即:拿M=6举例:杨辉三角数为:1,6,15,20,15,6,1对应的0个1的6位数有一个数,1个1的6位数有6个数,2个1的6位数有15个。。。。下面分别对不同个数的1分类考虑。显然:0个1的6位数有一个数,只能包含一个循环;1个1的6位数有6个数,也只包含一个循环。那么2个1的6位数有15个数,包含几个

2012-10-15 11:13:58 1155

原创 MIT算法导论第四节笔记——快速排序

快速排序是基于分治思想的一种原地排序,但其效率依赖于输入数据的排序状况。视频中分析了最好情况,最差情况,以及最好最差交替出现的情况。研究表明:数据划分为1:9和5:5效率上市一个数量级;最好和最差交替的情况和趋向于最好。 随机化快速排序,即随机化选择主元素。其效率不依赖于输入数据的排序状况。它的效率通常是归并排序的三倍。视频中精彩的部分是对随机化快速排序算法复杂度的推导过程,其中不

2012-10-14 12:33:29 750

原创 MIT算法导论第三节笔记——分治思想

这一节主要讲了分治思想,首先我应该向大家推荐两本参考书:《算法导论》和《算法概论》,很多讲课内容都在这两本书上,但不限于这两本书。 这次视频中设计的算法如下:归并排序折半查找求X的幂斐波那契数,包括1. 递归算法;2. 用存储每一个计算过的斐波那契数的方式,降低计算次数;3. 利用公式(受计算机精度的限制;4. 利用定理(2*2的矩阵幂的形式),再次降低计算次数。矩阵乘

2012-10-14 10:31:31 537

原创 立足基础奔向最前沿技术

今天看了《黑衣人3》和《源代码》两部电影,深受感触:有那么一天,这样的科技是能达到的。面对国外的先进技术,加上这个感触,我想到了电影《钱学森》里的一句话:手里有剑不用与手里没剑是不一样的。暂且不和国外的比,单说如果有一天这些技术实现了,就说相关的法律也很健全,但总会让人担忧——如:仪器轻轻一扫,记忆全没了。我们的命运完全操控在先进技术人的手中!即使在有生之年这些技术也实现不了,我还是要

2012-10-13 23:08:38 578

原创 学习经验总结

1. 多看网易公开课,尤其多看外国的课程开阔视野;2. 既然不喜欢现在的工作,就尽量少做以后都不可能用到的技术或者临时性的小任务。3. 调整学习顺序,先学算法。4.每天坚持学习,加油!

2012-10-12 07:16:29 651

原创 MIT算法导论第二节笔记

本节主要讲了一些算法分析的内容4种渐近符号求解递归式的三种方法:(P38)1. 代换法(通常可以)2. 递归树方法(对所有都可以,但不严谨)3. 主方法-主定理(只对特等的递归式有效,包含三种情况)

2012-10-11 06:35:40 378

原创 MIT算法导论第一节笔记

算法分析——研究性能和资源利用的算法设计 什么比性能更重要?为什么要学习算法?1. 解决最前沿的东西(重复十年前的东西,一般不需要算法);2. 是更好用户体验的基础,更好安全性的保障;3. 性能是最底层的东西,相当于“货币”;4.有趣。 伪代码的好处:使算法描述简洁,易书写。三种算法分析:最坏时间分析——运行的上界,用户承诺时间平均时间分析(需要

2012-10-10 22:49:08 572

原创 把M位的2^M种不同的0-1串按圆排列划分(1)

原题描述如下:假定一个M bits的0-1串, 那么总共有2^M种不同的字符串, 凡是可以通过循环左移的字符串划为一组,找出每个组的一个代表即可。如何设计一个算法? M取值3-32思路如下:因为题目中涉及循环左移,移动过程中串中1和0的个数不变,因而可以先把所有串按其中1的个数分组,由于0的个数加上1的个数等于M,所以只需考虑0到(M + 1)/2个1的情况,(M + 1)/2 +1到

2012-10-07 21:18:57 1208

原创 立足现在走向未来

现实决定了你就是一小小本科;现实决定了你暂时的落后;现实决定了你有些不如意;七年的时间,别人可以和你走出天壤之别的路和境界再七年的时间,你难道不能追上去吗?没有谁随随便便成功,一步一个脚印走出的路才值得骄傲!我不再会梦想在现在的安乐窝中懒散度日或者升职;我不在模仿或追随他人的后尘;我要迈步走向属于自己的天空!一步步的向世界展示:我是谁!

2012-10-04 04:12:06 383

原创 明天正式开始实施计划了

总结一下这几天试运行计划的感触:小事都容易完成,花钱的事容易完成。工作的事也能完成各差不多。自由时间的计划执行力差劲!为了更灵活,可以把每周的学习时间做个浮动时间。总结一下近几天工作的感悟:一定要和高素质的,组织性强的人一同工作,这样能够学到很多;可以短时间内和素质差,组织性差的人一同工作,让你明白他们会给你带来多少麻烦,托你工作的后腿!无论在那个公司,工作表现好了,领导多

2012-09-14 06:12:06 870

原创 计划不再推不再变,一个方向走下去

人都有惰性,我知道;人都有彷徨,我知道;可是不能一辈子懒惰,一辈子彷徨吧!选定一个方向,下定一个恒心,不论前方的路有多难,不论外界有多少诱惑,我就专注专一!围绕主要实力发展,进而才能依靠主要发展外围!改变要渐进式,不要跳跃式!以前面的成绩为基,才能越行越远!

2012-09-11 22:37:09 561

原创 自己动手设计输入法

最近自己写了个手机输入法的程序。先介绍下功能: 支持拼音输入和笔画输入。 现在讲一下开发过程和思路: 1. 资源准备: 下载所有的拼音组合下载各拼音对应的汉字字库下载汉字使用频率表再弄到每个汉字的笔画笔顺 2. 算法设计(包括了前期资源处理的过程,分离该过程可以更精简更快) 拼音输入法1. 按拼音顺序存储汉字及其使用频率,并记录每个拼

2012-09-05 01:26:31 2681 1

原创 走自己的程序之路

曾经我是多么的浮躁!曾经我是多么的轻狂!曾经我多想创业!曾经我多想早出生几年! 我的能力跟不上我的想法,我的资源架不起我的理想。。。 碰了壁,经历了沧桑,我才明白:理想是在自己已拥有的现实中实现的,既不能只会空想也不能大跃进! 还是胸怀理想,脚踏实地的好。 很快成名的企业家还是少数,很多还是一步一步走出的理想。 相信量变带来质变,相信认定了方向坚持胜过朝令夕

2012-09-05 00:46:43 612

原创 一年半拿下五个证!

我计划一年半拿下五个证:系统架构设计师证,系统分析师证,系统集成项目管理师高级证,驾驶证和结婚证。 之所以拿这么多证,因为我在国企上班,工作清闲些。暂时不好跳槽,创业的主客观条件都不足(有技术都不一定能创业成功,何况我只存在想法呢)。 我还是现实些,多考几个证书,增加在国企升职的砝码吧!同时也是为了拓展自己的知识面。 这五个证当中,我最看重系统架构设计师证和结婚证。

2012-09-05 00:12:33 1031

空空如也

空空如也

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

TA关注的人

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