数据结构与算法
qq_31241107
灰化肥会发挥
展开
-
Java数据结构与算法——快速排序
排序算法快速排序快速排序将一个无序的数组分为两个无序的数组其中一个数组的最大值小于等于另一个数组的最小值两个数组各自进行排序后拼接在一起就是完整的有序的数组...原创 2020-05-03 11:56:01 · 89 阅读 · 0 评论 -
Java数据结构与算法——希尔排序
排序算法希尔排序希尔排序希尔排序也是一种插入排序,是插入排序经过改进的版本,也称为缩小增量排序将列表根据一定的增量分组,对每组组内元素进行直接插入排序将增量减少,再次分组,再次对组内进行排序;当增量为1时,整个列表就是一组再次进行直接插入排序,这样得到的就是有序列表希尔排序不需要大量的数据移动就可以完成列表的排序例如10个元素的列表,增量为10/2 = 5所有将列表分为5组,下标...原创 2020-04-16 17:02:00 · 108 阅读 · 0 评论 -
Java数据结构与算法——直接插入排序
排序算法插入排序插入排序一个序列中只有1个元素那它一定是有序的取原序列第一个元素作为子序列,这个子序列一定是有序的取出原序列第二个元素赋值给哨兵,将哨兵的值与子序列最后一个元素进行比较 如果子序列最后一个元素大于哨兵的值,将子序列扩大一位,将子序列最后一个元素后移一位 循环遍历哨兵与子序列前一位的值的大小,直到当前值小于哨兵的值,就将哨兵的值放在子序列当前下...原创 2020-04-16 15:22:45 · 138 阅读 · 0 评论 -
Java数据结构与算法——简单选择排序
排序算法简单选择排序简单选择排序假定一个临时变量存储最小元素的下标,int temp = 0;假定一个临时变量来存放最小元素的值 int min = arr[temp];将这个临时的最小元素int min与无序数组的元素一一比较,如果无序数组的元素小就将替换最小元素的值int min = arr[index];int temp = index;一轮下来就找到了最小元素如果最小元素...原创 2020-04-15 15:45:05 · 75 阅读 · 0 评论 -
Java数据结构与算法——冒泡排序
排序算法冒泡排序冒泡排序创建一个无序的数组1、指定一个临时指针指向第一个元素,比较相邻的下一元素。如果第一个比第二个大(小),就交换他们两个。2.临时指针自增1,比较第二个元素与相邻的下一元素当指针等于数组长度 - 2 时,当前数组最大的数就在数组最末尾重复上述流程,当指针等于数组长度 - 3 时第二大的数就在数组倒数第二个位置public static void bubbleSo...原创 2020-04-15 14:53:43 · 144 阅读 · 0 评论 -
Java数据结构与算法——算法简要概念
算法时间频度时间频度的比较时间复杂度时间复杂度的计算常见的时间复杂度空间复杂度数据结构是程序的基础,算法就是程序的灵魂时间频度一个算法执行时间与执行语句次数,用T(n)表示int sum = 0;for(int i = 0 ; i <= 100 ; i++){ sum += i;}//以上代码的T(n) = n + 1;int sum = (1+100)*100/2;...原创 2020-04-15 14:33:49 · 88 阅读 · 0 评论 -
Java数据结构与算法——链表
链表模拟链表链表是一种常见的基础数据结构,元素是链式的,以节点的形式存储数据元素节点之间不一定是连续的链表可以动态的进行存储分配可以在节点中定义多种数据类型,还可以根据需要随意增添,删除,插入节点链表都有一个头指针,一般以head来表示,存放的是一个地址。链表中的节点分为两类,头结点和一般节点,头结点是没有数据域的链表中每个节点都分为两部分,一个数据域存放数据,一个是指针域指向下一个...原创 2020-03-30 21:14:25 · 97 阅读 · 0 评论 -
Java数据结构与算法——栈
栈数组模拟栈线性结构之一:栈栈是一个先入后出的有序列表栈的元素不能从列表中间增加和删除,只能从顶端增删数据,称为栈顶;底端为固定的一端不进行元素的增删,称为栈底数组模拟栈栈类:属性:栈大小/数组模拟栈/栈顶(top = -1)方法:判断栈是否满:用栈顶的标记值top == 栈大小 - 1判断栈是否空:top == - 1入栈出栈显示栈所有数据显示栈顶元素构造器:...原创 2020-03-07 15:29:17 · 110 阅读 · 0 评论 -
Java数据结构与算法——队列
队列数组模拟队列线性结构之一:队列队列是一个先入先出的有序列表数组模拟队列用数组来模拟环形队列属性: 队列最大容量 maxSize 队列头标记:int front 队列尾标记:int real 模拟队列的数组:int[] arr构造器:初始化数组大小方法; 判断队列是否空 判断队列是否满 添加数据到队列 从队列获取数据 显示队列所有数据 显示队列头的数据(不...原创 2020-03-12 20:16:28 · 114 阅读 · 0 评论