```cpp#include #include #include #include #include #include #include #include #include #include #include #include //STL 是一个框架, 将数据结构和算法进一步的抽象//容器, 迭代器... ...
分类:
编程语言 时间:
2020-02-24 20:58:19
阅读次数:
114
################################################## """ 三、线性结构 (1)栈 1、定义:栈是一个数据集合,可以理解为只能在一端进行插入或者删除操作的列表。 2、栈的特点:后进先出(last-in,first-out),简称LTFO表 这种数据结 ...
分类:
编程语言 时间:
2020-02-23 10:02:34
阅读次数:
66
################## 归并排序 ####################### """ 归并算法逻辑 拆分 对整个序列进行拆分,左边一部分,右边一部分 然后对每一部分再次进行拆分,一直到拆分到只有一个元素,就到头了, 第1次拆分:54, 26, 93, 17, 77, 31, 44, ...
分类:
编程语言 时间:
2020-02-23 09:59:37
阅读次数:
87
################## 希尔排序 ######################## """ 希尔排序 希尔排序就是插入排序的一种改进版本, 算法的步骤 把一个序列不视为一个整体,而是视为多个子序列, 假设间隔是gap=4 alist = [54,26,93,17,77,31,44,55 ...
分类:
编程语言 时间:
2020-02-23 09:48:16
阅读次数:
80
################## 快速排序 ####################### """ 快速排序使用分治法(Divide and conquer)策略来把一个序列(list)分为较小和较大的2个子序列,然后递归地排序两个子序列。 步骤为: 1,挑选基准值:从数列中挑出一个元素,称为" ...
分类:
编程语言 时间:
2020-02-23 09:42:18
阅读次数:
73
####################################################### """ # 线性表是最基本的数据结构之一,在实际程序中应用非常广泛,它还经常被用作更复杂的数据结构的实现基础。 # 根据线性表的实际存储方式,分为两种实现模型: # 顺序表, # 链表, ...
分类:
编程语言 时间:
2020-02-23 09:41:46
阅读次数:
71
################## 插入排序 #################### """ 插入算法: alist = [54,26,93,17,77,31,44,55,20] 还是把序列分为两部分, 一开始就把第一个数字认为是有序的, alist = [54, 26,93,17,77,31, ...
分类:
编程语言 时间:
2020-02-23 09:41:12
阅读次数:
79
######################################################## """ 一、树 1、什么是树? 树状图是一种数据结构,它是由n(n>=1)个有限节点组成一个具有层次关系的集合。 把它叫做“树”是因为它看起来像一棵倒挂的树,也就是说它是根朝上,而叶朝下 ...
分类:
编程语言 时间:
2020-02-23 09:39:17
阅读次数:
74
################## 排序算法 ###################### """ 排序算法, 我们想要把线性表中的无序序列,排成有序序列,的算法,就是排序算法, 排序算法的稳定性 举例:假设对下面的元组要以他们的第一个数字来排序。 (4, 1) (3, 1) (3, 7)(5, ...
分类:
编程语言 时间:
2020-02-23 09:34:41
阅读次数:
56
################## 选择排序 ####################### """ 选择排序 思路是怎么样的? 现在有一个序列:alist = [54,226,93,17,77,31,44,55,20] 先遍历所有的,n个,把最小的放到最前面, alist = [17, 54,2 ...
分类:
编程语言 时间:
2020-02-23 09:30:12
阅读次数:
80