摘要: 1.原理 默认第一个元素已排序,后面每个元素各与前面元素依次进行比较,直到不需要交换位置,根据需求插入位置(升序或降序)。 画图解释如下: 第一轮比较: 第二轮比较: 第三轮比较: 第四轮比较: 结论:n个元素,要进行n-1轮比较,每轮比较次数不定。时间复杂度为O(n^2)。 2.核心代码如下: v 阅读全文
posted @ 2021-01-19 21:14 吃个橘子丶 阅读(115) 评论(0) 推荐(0)
摘要: 1.原理 拿未排序的第一个元素与其它元素依次进行比较,每轮比较获得一个最值(根据需要取最大或最小置于未排序元素首位),比较n-1轮。 画图解释如下(以升序为例): 第一轮比较: 第二轮比较: 第三轮比较: 第四轮比较: 根据上述,可以得出:n个元素要进行n-1轮比较,每轮比较次数-1;时间复杂度为O 阅读全文
posted @ 2021-01-19 20:18 吃个橘子丶 阅读(207) 评论(0) 推荐(0)
摘要: 1.原理 n个元素排序,相邻两个元素进行比较,按照需求,若两者比较大于0交换位置(升序),或者两者比较小于0交换位置(降序),每一轮比较排列好一个元素,排列好的元素下一轮不进行比较,共需要n-1次排序。 下面以升序为例: 第一次排序: 第二次排序: 第三次排序: 第四次排序: 排序完成。 核心代码: 阅读全文
posted @ 2021-01-19 17:32 吃个橘子丶 阅读(109) 评论(0) 推荐(0)
摘要: 1.什么是数据结构 简单来说,就是计算机存储、组织数据的方式。 2.分类 从逻辑上来看分为以下4种: a.集合结构 b.线性结构(一对一) c.树形结构(一对多) d.图形结构(多对多) 从实际存储结构来看分为一下两种: a.顺序存储结构(如:数组) 在内存中是一块连续的存储区域。 它的优势是:增删 阅读全文
posted @ 2021-01-19 16:26 吃个橘子丶 阅读(114) 评论(0) 推荐(0)