发表于: 2018-01-28 22:02:21

1 564


今日完成的事情:

今天看了一下快速排序:

昨天的冒泡排序虽然实现起来很好实现,但是却很少使用,原因是冒泡排序花费的时间比较常,效率比较低下,快速排序是比较常用的排序方式:

快速排序的中心思想是:

每次排序的时候设置一个基准点,将小于等于基准点的数全部放到基准点的左边,将大于等于基准点的数全部放到基准点的右边。然后从两边依次向中间和基准数一一比较,等到左右两边相等时,就把基准数放在这个位置。然后再次从基准数左右分别进行上述步骤:

代码非常简单:

                                             

核心代码也就上面几行。

这两天看算法,对算法的理解就是,算法最主要的时思想,只要掌握了这种思想,代码实现起来也就是几行代码。

然后就是基础知识:

抽象类(abstract class)和接口(interface)有什么异同?
抽象类和接口都不能够实例化,但可以定义抽象类和接口类型的引用。一个类如果继承了某个抽象类或者实现了某个接口都需要对其中的抽象方法全部进行实现,否则该类仍然需要被声明为抽象类。接口比抽象类更加抽象,因为抽象类中可以定义构造器,可以有抽象方法和具体方法,而接口中不能定义构造器而且其中的方法全部都是抽象方法。抽象类中的成员可以是private、默认、protectedpublic的,而接口中的成员全都是public的。抽象类中可以定义成员变量,而接口中定义的成员变量实际上都是常量。有抽象方法的类必须被声明为抽象类,而抽象类未必要有抽象方法。

明日计划的事情:

继续基础知识的学习。

遇到的问题:

收获:

对一些基础知识的学习。



返回列表 返回列表
评论

    分享到