摘要: 排序算法经过了很长时间的演变,产生了很多种不同的方法。对于初学者来说,对它们进行整理便于理解记忆显得很重要。每种算法都有它特定的使用场合,很难通用。因此,我们很有必要对所有常见的排序算法进行归纳。 我不喜欢死记硬背,我更偏向于弄清来龙去脉,理解性地记忆。比如下面这张图,我们将围绕这张图来思考几个问题。 上面的这张图来自一个PPT。它概括了数据结构中的所有常见的排序算法。现在有以下几个问题: 1、每个算法的思想是什么? 2、每个算法的稳定性怎样?时间复杂度是多少? 3、在什么情况下,算法出现最好情况 or 最坏情况? 4、每种算法的具体实现又是怎样的? 这个是排序... 阅读全文
posted @ 2012-09-25 22:38 积淀 阅读(309) 评论(0) 推荐(0) 编辑
摘要: 思考为什么要引入容器这个概念?Java有多种方式保存对象(应该是对象的引用),例如使用数组,数组时保存一组对象中的最有效的方式,如果你想保存一组基本类型的数据,也推荐使用这种方式,但大家知道数组是具有固定尺寸的,你必须视线知道你要需要多少个对象。但是在一般的情况中,你在写程序中并不知道将需要多少个对象,或者是否需要更加复杂的方式来存储对象,因此数组尺寸固定很不爽!为了解决上述问题,引入了容器的概念。容器提供了完善的方法来保存对象,你可以使用这些工具来解决数量惊人的问题。Java日容器类可以自动调整自己的尺寸,因此与数组不同,你可以将任意数量的对象放到容器中,并不担心容器设置为多大。基本概念ja 阅读全文
posted @ 2012-09-25 22:35 积淀 阅读(388) 评论(0) 推荐(0) 编辑