• 线性表(linear list)

    线性表是最基本、最简单、也是最常用的一种数据结构,一个线性表是n个具有相同特性的数据元素的有限序列。

    算法 2021-06-21 21:01:07 浏览(3071) 阅读原文
  • 单一职责原则(Single responsiblility principle)

    单一职责原则(Single Responsibility Principle,SRP)又称单一功能原则,由罗伯特·C.马丁(Robert C. Martin)于《敏捷软件开发:原则、模式和实践》一书中提出的。这里的职责是指类变化的原因,单一职责原则规定一个类应该有且仅有一个引起它变化的原因,否则类应该被拆分(There should never be more than one reason for a class to change)。

    设计模式 2021-06-16 11:52:57 浏览(1636) 阅读原文
  • 快速排序(Quick Sort)

    快速排序是对冒泡排序的一种改进,它的基本思想:通过一趟排序将要排序的数据分割成独立的两个部分,其中一个部分的所有数据都比另一个部分的所有数据都要笑,然后再按照此方法对这两部分数据进行快速排序,整个排序过程可以递归进行,以此到达整个数据变成有序序列。

    算法 2021-06-16 10:26:28 浏览(3038) 阅读原文
  • 归并排序(Merge Sort)

    归并排序是建立在归并操作上的一种有效的排序算法,该算法是采用了分治思想的一个非常典型的应用。将已有序的子序列合并,得到完全有序的序列;即先使每个子序列有序,再使子序列间有序。如果将两个有序表合并成一个有序表,称为二路归并。

    算法 2021-06-16 10:25:02 浏览(3054) 阅读原文
  • 希尔排序(Shell's Sort)

    希尔排序是插入排序的一种,又称“缩小增量排序”,是插入排序算法的一种更高效的改进版本。

    算法 2021-06-16 10:23:17 浏览(3313) 阅读原文
  • 插入排序(Insertion Sort)

    插入排序(Insertion Sort)是一种简单直观且稳定的排序算法。

    算法 2021-06-15 11:28:12 浏览(3469) 阅读原文
  • 责任链模式(Chain Of Responsibilities)

    为了避免请求发送者与多个请求处理者耦合在一起,将所有请求的处理者通过前一对象记住其下一个对象的引用而连成一条链;当有请求发生时,可将请求沿着这条链传递,直到有对象处理它为止。

    设计模式 2021-06-11 12:14:47 浏览(1961) 阅读原文
  • 选择排序(Selection Sort)

    数据结构是以某种形式将数据组织在一起的集合,它不仅存储数据,还支持访问和处理数据的操作。算法是为求解一个问题需要遵循的、被清楚指定的简单指令的集合。

    算法 2021-06-10 11:35:12 浏览(1813) 阅读原文
  • 冒泡排序(Bubble Sort)

    冒泡排序(Bubble Sort),是一种计算机科学领域的较简单的排序算法。

    算法 2021-06-08 11:22:01 浏览(1442) 阅读原文
  • 观察者模式(Observer)

    指多个对象间存在一对多的依赖关系,当一个对象的状态发生改变时,所有依赖于它的对象都得到通知并被自动更新。这种模式有时又称作发布-订阅模式、模型-视图模式,它是对象行为型模式。

    设计模式 2021-06-08 11:20:34 浏览(2257) 阅读原文
  • 模板方法模式(Template Method)

    模板方法模式定义了一个算法的步骤,并允许子类别为一个或多个步骤提供其实践方式。让子类别在不改变算法架构的情况下,重新定义算法中的某些步骤。

    设计模式 2021-06-04 08:42:00 浏览(1503) 阅读原文
  • 冒泡排序(Bubble Sort)

    冒泡排序(Bubble Sort),是一种计算机科学领域的较简单的排序算法。

    算法 2021-06-03 10:32:21 浏览(1618) 阅读原文
  • 策略模式(Strategy)

    在策略模式(Strategy Pattern)中,一个类的行为或其算法可以在运行时更改。这种类型的设计模式属于行为型模式。在策略模式中,我们创建表示各种策略的对象和一个行为随着策略对象改变而改变的 context 对象。策略对象改变 context 对象的执行算法。

    设计模式 | Java 2021-06-03 10:29:35 浏览(1246) 阅读原文
  • 单例模式(Singleton)

    单例模式(Singleton Pattern)是最简单的设计模式之一。这种类型的设计模式属于创建型模式,它提供了一种创建对象的最佳方式。

    设计模式 | Java 2021-06-03 10:29:34 浏览(810) 阅读原文
  • 空间复杂度

    计算机的软硬件都经历一个比较漫长的演变史,作为为运算提供环境的内存,更是如此,从早些时候的512KB、经历了1M、2M、4M等,发展到现在的8G、16G和32G。所以早期算法在运行的过程中对内存的占用情况也是一个经常需要考虑的问题。这里可以用算法的空间复杂度来描述算法对内存的占用。

    算法 2021-06-01 09:33:31 浏览(2111) 阅读原文