摘要:
目录直接选择排序描述选择排序的缺点:算法步骤代码实现 直接选择排序 描述 选择排序是一种简单直观的排序算法,无论什么数据进去都是 O(n²) 的时间复杂度。所以用到它的时候,数据规模越小越好。唯一的好处可能就是不占用额外的内存空间了。 选择排序的缺点: 效率低下:选择排序的时间复杂度始终是 𝑂(� 阅读全文
摘要:
目录冒泡排序描述冒泡排序的缺点:什么时候最快什么时候最慢特点评价:代码实现 冒泡排序 描述 冒泡排序(Bubble Sort)也是一种简单直观的排序算法。它重复地走访过要排序的数列,一次比较两个元素,如果他们的顺序错误就把他们交换过来。走访数列的工作是重复地进行直到没有再需要交换,也就是说该数列已经 阅读全文
摘要:
目录插入排序描述应用分析时间复杂度空间复杂度算法步骤代码实现 插入排序 描述 插入排序,一般也被称为直接插入排序。对于少量元素的排序,它是一个有效的算法。插入排序是一种最简单的排序方法,它的基本思想是将一个记录插入到已经排好序的有序表中,从而一个新的、记录数增1的有序表。在其实现过程使用双层循环,外 阅读全文
摘要:
队列 队列的概念 队列:只允许在一端进行插入数据操作,在另一端进行删除数据操作的特殊线性表,队列具有先进先出的特点FIFO(First In First Out) 入队:进行插入操作的一端称为队尾 出队:进行删除操作的一端称为队头 链实栈代码实现 Ququq.h #pragma once #defi 阅读全文
摘要:
栈 栈的概念 一种特殊的线性表,其只允许在固定的一端进行插入和删除元素操作。进行数据插入和删除操作的一端 称为栈顶,另一端称为栈底。栈中的数据元素遵守后进先出LIFO(Last In First Out)的原则。 压栈:栈的插入操作叫做进栈/压栈/入栈,入数据在栈顶。 出栈:栈的删除操作叫做出栈。出 阅读全文
摘要:
目录队列队列的概念链实栈代码实现Ququq.hQueue.c 队列 队列的概念 队列:只允许在一端进行插入数据操作,在另一端进行删除数据操作的特殊线性表,队列具有先进先出的特点FIFO(First In First Out) 入队:进行插入操作的一端称为队尾 出队:进行删除操作的一端称为队头 链实栈 阅读全文
摘要:
目录栈栈的概念顺序栈代码实现Stack.hStack.c 栈 栈的概念 一种特殊的线性表,其只允许在固定的一端进行插入和删除元素操作。进行数据插入和删除操作的一端 称为栈顶,另一端称为栈底。栈中的数据元素遵守后进先出LIFO(Last In First Out)的原则。 压栈:栈的插入操作叫做进栈/ 阅读全文
摘要:
目录顺序表概念代码实现动态顺序表SeqLish.hSeqList.c线性表区分 顺序表 概念 顺序表是用一段物理地址连续的存储单元依次存储数据元素的线性结构,一般情况下采用数组存 储。在数组上完成数据的增删查改。 顺序表一般可以分为: 静态顺序表:使用定长数组存储元素。 动态顺序表:使用动态开辟的数 阅读全文
摘要:
目录链表链表的概念链表的分类代码实现无头单向非循环链表SingleLink.hSingleLink.c带头双向循环链表DoubleLink.hDoubleLink.cnull 链表 链表的概念 链表是一种物理存储结构上非连续、非顺序的存储结构,数据元素的逻辑顺序是通过链表中的指针链接次序实现的 。 阅读全文