摘要:
1,怎样来定义一个数据结构?一般来说,你要1)先定义这个数据结构的抽象机制(即ADT),用一个接口来表示,2)用一个类(即表示数据结构)来实现这个接口(即实现这个数据结构)3)考虑怎样来实现这个数据结构(例如存储形式,维护那些变量等)例如,要写一个集合的数据结构,1)先要根据你需要的功能设计好集合里面需要定义哪些操作(方法),可以把它写成一个接口ADT,2)然后写一个集合的类来实现上述接口,这样你就实现了集合这个数据结构3)当然,你要考虑第三个问题,怎么来实现,即集合以一种什么形式组织在一起当然,也可以不写接口,你要定义这个数据结构拥有哪些操作直接写一个这样的类也行,先写一个接口是为了抽象机制 阅读全文
摘要:
1,快速排序快速排序通过分割值列,然后递归的对两个部分进行排序,从而实现对值列的排序。它的基本思想是:通过一趟排序将要排序的数据分割成独立的两部分,其中一部分的所有数据都比另外一部分的所有数据都要小,然后再按此方法对这两部分数据分别进行快速排序首先任意选取一个数据(通常选用第一个数据)作为关键数据,然后将所有比它小的数都放到它前面,所有比它大的数都放到它后面,这个过程称为一趟快速排序。怎么实现呢?---它的关键在于完成一趟快排后,基准元素在哪个位置,每次都选取一个分割列的第一个元素作为基准元素,来寻找用它来分割排序列后它自己所处的位置,编写一个int findPartition(data,mi 阅读全文