
数据结构和算法
文章平均质量分 91
鲑鱼683
这个作者很懒,什么都没留下…
展开
-
数据结构和算法Java实现——八大排序和四大查找
一、八大排序排序也称排序算法(Sort Algorithm),排序是将一组数据,依指定的顺序进行排列的过程。排序分类总体对比1 冒泡排序基本思想冒泡排序(Bubble Sorting)的基本思想是:通过对待排序序列从前向后(从下标较小的元素开始),依次比较相邻元素的值,若发现逆序则交换,使值较大的元素逐渐从前移向后部,就象水底下的气泡一样逐渐向上冒。因为排序的过程中,各元素不断接近自己的位置,如果一趟比较下来没有进行过交换,就说明序列有序,因此要在排序过程中设置一个标志fla原创 2021-08-27 22:15:01 · 506 阅读 · 0 评论 -
八大排序算法(java实现)
一、直接插入 - 1.基本思路 - 2.代码实现 - 3.时间复杂度和空间复杂度二、希尔排序 - 1.基本思路 - 2.代码实现 - 3.时间复杂度和空间复杂度三、简单选择 - 1.基本思路 - 2.代码实现 - 3.时间复杂度和空间复杂度四、堆排序 - 1.基本思路 - 2.代码实现 - 3.时间复杂度和空间复杂度五、冒泡排序 - 1.基本思路 - 2.代码实现 - 3.时间复杂度和空间复杂度六、快速排序 - 1.基本思路 - 2.代码实现 - 3.时间复杂度和空间复杂度七、归并排序 - 1.基本思路..转载 2021-08-27 20:10:18 · 905 阅读 · 0 评论 -
数据结构和算法java实现——栈和前缀、中缀、后缀表达式(逆波兰表达式)
数据结构和算法java实现——栈1 概述栈的英文为(stack)栈是一个先入后出(FILO-First In Last Out)的有序列表。栈(stack)是限制线性表中元素的插入和删除只能在线性表的同一端进行的一种特殊线性表。允许插入和删除的一端,为变化的一端,称为栈顶(Top),另一端为固定的一端,称为栈底(Bottom)。根据栈的定义可知,最先放入栈中元素在栈底,最后放入的元素在栈顶,而删除元素刚好相反,最后放入的元素最先删除,最先放入的元素最后删除进栈和出栈基于栈结构的特点,在实际原创 2021-08-27 19:09:21 · 388 阅读 · 0 评论 -
数据结构和算法java实现——队列、链表
数据结构和算法java实现——队列1 基本介绍队列是一个有序列表,可以用数组或是链表来实现。遵循先入先出的原则。即:先存入队列的数据,要先取出。后存入的要后取出2 数组实现队列队列本身是有序列表,若使用数组的结构来存储队列的数据,则队列数组的声明如下图, 其中 maxSize 是该队列的最大容量。因为队列的输出、输入是分别从前后端来处理,因此需要两个变量 front及 rear分别记录队列前后端的下标,front 会随着数据输出而改变,而 rear则是随着数据输入而改变,如图所示:原创 2021-08-27 10:51:19 · 312 阅读 · 0 评论 -
数据结构学习笔记(4)——队列
队列1 什么是队列队列(Queue):具有一定操作约束的线性表;插入和删除操作:只能在一端插入,而在另一端删除。数据插入:入队列(AddQ)数据删除:出队列(DeleteQ)先来先服务先进先出:FIFO2 队列的抽象数据类型类型名称:队列(Queue)数据对象集: 一个有0个或多个元素的有穷线性表。操作集: 长度为MaxSize的队列Q Queue,队列元素item ElementTypeQueue CreatQueue( int MaxSize ):生成长度为MaxSiz原创 2020-06-10 22:35:58 · 291 阅读 · 0 评论 -
数据结构学习笔记(3)——栈
栈1 栈得定义栈(Stack):具有一定操作约束的线性表只在一端(栈顶,Top)做 插入、删除插入数据:入栈(Push)删除数据:出栈(Pop)后入先出:Last In First Out(LIFO)栈的抽象数据类型类型名称: 栈(Stack)数据对象集: 一个有0个或多个元素的有穷线性表。操作集: 长度为MaxSize的堆栈S Stack,堆栈元素item ElementTypeStack CreateStack( int MaxSize ): 生成空堆栈,其最大长度原创 2020-06-09 00:22:25 · 295 阅读 · 0 评论 -
数据结构学习笔记(2)——线性表
线性表1 定义线性表(List): 零个或多个数据元素的有限序列表中元素个数称为线性表的长度线性表没有元素时,称为空表表起始位置称表头,表结束位置称表尾2 抽象数据类型ADT 线性表(List)data 线性表的数据时象集合为{a1,a2...an},每个元素的类型均 为DataType。其中.除第一个元素a1外,每一个元素有且只 有一个前驱元素.除了最后一个元素an.外,每一个元素有且 只有一个后继元素。数据元素之间的关系是一对一的关系。Operati原创 2020-06-05 00:26:05 · 376 阅读 · 0 评论 -
数据结构学习笔记(1)——基础概念
程序设计=数据结构+算法数据结构1 什么是数据结构?数据: 是描述客观事物的符号,是计算机中可以操作的对象,是能被计算机识别,并输入给计算机处理的符号集合。结构:不同数据元素之间不是独立的,而是存在特定的关系,我们将这些关系称为结构。数据结构:是相互之间存在一种或多种特定关系的数据元素的集合。2 数据结构分类2.1逻辑结构是指数据对象中数据元素之间的相互关系。集合结构: 集合结构中的数据元素除了同属于一个集合外,它 们之间没有其他关系。线性结构:线性结构中的数据元素之间是原创 2020-05-30 22:36:34 · 218 阅读 · 0 评论