算法(持续更新)For Java

作者:disappearedgod
时间:2014-4-13

An Algorithm must be seen to be belived. Donald Knuth

前言


其一:
作为即将入职的学生,大家一般都在抓瞎的看东西。本人纯属小白,而找工作也非吾所愿。但是,为了今后有回旋余地,还是要跟读一些博客。跟踪“结构之法,算法之道”的博客,写一些对应题目的自我感受而已。
其二:
要感谢实验室的师兄师姐的帮助,有些内容是他们无私分享。
其三:
红色为可点击项。


目录

一、综合题目(笔试相关)





二、算法及排序

    算法分析:指对一个算法所需要的资源进行预测。在分析一个算法之前,要简历有关实现技术的模型,包括描述所用资源的及代价的模型。

2.1 初级算法及排序

2.1.1 分治法
    将原问题划分成n个规模较小而结构与原问题相似的子问题;递归地解决这些子问题,然后在合并其结果,就得到原问题的解。
2.1.2 函数的增长
    这一内容涉及到《算法导论》第二章后半部分以及第三章内容。主要说明了4中方法的异同。一般的,Θ用来涵盖函数f(n),er O函数用确定函数f(n)的上界。Knuth提出用Ω和θ来描述上界和下届。Knuth, D. E. (1976). Big omicron and big omega and big theta. ACM Sigact News8(2), 18-24.
2.1.3 递归式
    三种解递归式方法。 找出解的简介“θ”或“O”界的方法。
  • 代换法(substitution method):先猜有某个界存在,然后再用数学归纳法证明该猜测的正确性。
  • 递归树方法(recursion-tree method):将递归式转换成树形结构,树中的节点代表在不同递归层次付出的代价。最后,利用对和式限界的结束来接触递归式。
  • 主方法(master method):给出递归公司的界 T(n)=aT(n/b)+f(n),其中,a>=1,b>1,f(n)是给定的函数;这种方法要记忆三种情况。
2.1.4排序
         排序问题
  •     输入:n个数的序列<a1,a2,...,an>
  •     输出:输入序列的一个重排<a1',a2',...,an'>,使得a1'<=a2'<=...<=an'
  •     输入序列通常是一个n元数组,但也可能由其他形式来表示,如链表。

        研究排序算法原因:
  •     程序本事需要对信息进行排序。
  •     算法通常把排序作为关键子程序。
  •     排序时一个我们可以证明其非平凡下界的问题。我们的最佳上界能够与这个非平凡下界渐进地相等,这就意味着我们的排序算法是渐进最优的。
        排序算法归类
        --比较排序算法
        ----插入排序
        ----归并排序
        ----堆排序
        ----快速排序
        ----决策树模型证明(最坏情况的运行时间的下界为Ω(nlogn))
        --非比较排序算法
        ----基数排序
        排序【链表版】

2.1.5 中文所述和顺序统计学

2.2 高级设计和分析技术

      2.2.1 动态规划


      2.2.2 贪心算法


      2.2.3 平摊分析


三、数据结构(面试所考)

3.1 基本数据结构(线性数据结构

3.2 散列表

  • 直接寻址表
  • 散列表
  • 散列函数
  • 开饭寻址法
  • 完全散列

3.3 二叉查找树

3.4 红黑树

3.5 数据结构的扩张

3.6 高级数据结构

3.6.1 B树

3.6.2 二项堆
3.6.3 斐波那契堆
3.6.4 用于不相交集合的数据结构

3.7

3.7.1 图的基本算法
3.7.1 最小生成树
3.7.2 最短路径
3.7.3 最大流
 

四、数据挖掘 机器学习算

五、数据处理


六、工具探究


七、开源薄见


八、参考文献

1.《算法导论》
2.《算法》第四版

 后记:

更新列表

更新内容更新时间
目录2014/4/13
分治法2014/4/13
堆排序2014/4/14
  
  
  
  
  
  

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值