数据结构与算法
Jack_0601
热爱生活,喜爱分享。
展开
-
数据结构之二叉树
一、定义二叉树,指的是至多包含两个子结点的树结构。二、区别数组:查找的复杂度为O(1),插入和删除由于需要移位操作,因此复杂度为O(N);链表:插入和删除操作只需要更换一个结点,因此其复杂度为O(1),而遍历则需要O(N)的复杂度;二叉树:以树的结构来存储数据,插入、删除和查找操作的复杂度均为O(log2Nlog_{2}^{N}log2N)。三、存储顺序存储:空缺位置用#号替代,适合稠密存储。当二叉树接近满二叉树时效率较高。链式存储:最常用的存储方式。四、遍历先序遍历(preOrde原创 2020-06-14 09:57:14 · 124 阅读 · 0 评论 -
数据结构之排序
1 冒泡排序 Bubble Sort1.1 算法原理(1)比较相邻的元素,如果第一个元素比第二个元素大,则将两者交换;(2)从开始的第一对元素到结尾的最后一对元素,对每一对相邻的元素进行步骤(1)的操作。(3)针对所有的元素重复(1)(2)步骤,除了最后一个;(4)持续每次对越来越少的元素重复上面的步骤,直至没有任何一对数字需要比较;备注:设置一个flag,如果出现一趟排序过程中没有出现交换的操作,则认为整个数组已排好序。1.2 算法实现def bubble_sort(nums, reve原创 2020-06-06 23:31:42 · 251 阅读 · 0 评论