学习进度2012-6-26(动态规划算法、Prim算法、Dijkstra算法)

今天学习下三个算法:动态规划算法、Prim算法、Dijkstra算法,将自己理解的逻辑略作总结。

1、动态规划算法是选取两个字符串的最长子序列的解法作为切入点学习,在公司午休时间将代码写了下,初步测试运行正常,再解此问题时也想到了备忘录法;

动态规划算法为了避免子问题的重复计算,通过储存子问题的结果,循环往上可求得最终结果;而备忘录法思想类似,也存储了子问题的结果,但可以通过递归实现,在递归函数中做一判断,如果子问题已经有值,则可直接取用子问题结果,否则存储子问题结果。

2、Prim算法是为了构造图中的最小生成树而提出的算法,算法的理论基础如下:

假设N=(V,{E})是一个连通网,U是顶点集合V的一个非空子集。若(u,v)是一条具有最小值(代价)的边,其中u属于U,v属于V-U(即U对立集合),那么必存在一颗包含边(u,v)的最小生成树。

了解上述的理论,则编出相应的程序也不太难了。

3、Dijkstra算法是为了求解图一点到其他所有点的最短路径提出的算法,其不断的更新迭代源点到图中其他点的距离,以得出最小距离,每次迭代都是选取一个相对最短路径的点进行扩展,直到所有的点都迭代计算过。

 

另最近学的东西比较杂:

1、以C++为主线,学习了STL源码剖析(目前进度为红黑树RB-tree),BOOST编程(目前进度为smart_ptr),深入C++对象模式(目前进度为成员函数);

2、算法看编程之美(4个算法),算法分析与设计(3个算法),程序员编程艺术(2个算法);

3、windows编程,回顾了下Winmain,WndProc,窗口类,MSG的相关基础知识,windows32 SDK编程目前不想继续,有空可以看下MFC源码分析和windows核心编程;

4、设计模式,回顾了几个基本的模式,Factory,Builder,Proxy, Bridge,Adapter,Singleton,prototype,Decorator,目前还没有做到了然如心的境界,需要不断的复习和实践;

5、oracle,安装并有了初步的学习,基本的SQL语句还凑合着会用,后续还需要加强学习,主要是C++编程ORACLE这块。

 

后续学习和复习计划中还需要加入的地方:

1、多线程编程,BOOST的线程库需要好好了解了解,因为windows和linux下都可以使用这个库,对于MFC的多线程编程也可以了解,主要还是对于多线程的概念和注意事项要非常了解;

2、TCP/IP协议以及网络编程,虽然之前windows网络编程和unix网络编程都学习过一段时间,但目前基本已经忘记,希望能较快的捡起来;

3、对于机器学习相关的算法,可以再捡起来开拓思路;

4、后续自己确定需求编写小软件,希望这个能得到尽快实施。

 

要学的东西也很多,现在抓两条主线,一抓C++,希望对于面向对象的了解更加的深刻,对于C++编译器的运作了解更加透彻;

二抓算法,不断的学习和思考,真正让自己的脑子里有东西,目前对于数据结构的掌握,算法的掌握还远远不够,后续算法的学习需要花大量时间积累和领悟,对于大学和

研究生时期所学的数学和计算理论相关的知识也希望有空了解。

 

 

 

 

另将简历挂上网后,接到两个外包公司的电话,博彦科技,中软国际,但外包不是自己想转行去的地方;

而自己投到绿盟科技和一个云计算公司的简历却石沉大海,心里有点不是味道,现将简历暂时置为完全保密的形式,遇到希望去的公司再投,另争取7月前抽出时间制作一份英文简历。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值