第1章 引论

今年3月转行,从事JavaWeb开发工作。觉得以后想要较好的发展,除了提高上层应用技术水平,还应该学习计算机的基础课程,构建计算机知识系统。按照左飞老师提到的计算机学习路线,目前打算先学习算法和编译原理这第一条路线,估计在边工作边学习的状态下,至少得半年光景吧。同时,计划每学完一章,会写一篇博客,以作总结。

算法这本书名字:数据结构与算法分析 Java语言描述 马克.艾伦.维斯著

1.1 本书讨论的内容

算法的目的:优化程序。

1.2 数学知识复习

涉及指数、对数、级数、调和数、模运算、归纳证明、反证法等数学知识,不详细展开。

1.3 递归简论

递归的四个基本原则:

1. 基准情形:作为递归出口,当方法运算到此时,不再调用下一级方法。

2. 不断推进:递归总朝着基准情形前进。

3. 设计法则:假设所有的递归调用都能运行,这点如同归纳法中假设前n-1种情况成立。

4. 合成效益法则:在求解一个问题的同一实例时,切勿在不同的递归调用中做重复性的工作

1.4 实现泛型构件 pre-Java 5

Java 1.5 前使用Object来起到泛型作用,但相比泛型,缺少安全性。

Java 数组具有协变性

1.5 利用 Java 5 泛型特性实现泛型构件

泛型不具备协变,故引进通配符

不能用new 创建泛型类型的实例,也不能创建泛型数组

1.6 函数对象

涉及Comparable接口和Comparator临时比较器

对知识点的理解

1. 要成功设计递归方法,可从各级之间存在相似的变化关系入手

2. 上级方法假设下级方法返回需要的结果,并依靠该结果设计方法;下级具备同上级相似的方法过程。

疑惑与难点

1.利用递归求解


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值