![](https://img-blog.csdnimg.cn/20201014180756918.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
数据结构
一只攻城狮√
难道不成功你就不努力了吗
展开
-
数据结构-JAVA实现快速排序
快速排序 快速排序的思想:在一组需要排序的数据中选择一个基准,即在这一组数中选出一个数,然后从这个组数的左和右分别向中间遍历,从左面找到一个比基准数小的,从右面找到一个比基准数大的,交换这两个数的位置,即比基准数大的放到基准数右面,比基准数小的放到基准数右面,当左右遍历相撞时,说明,整个数组,左面没有比基准数大 的了,右面没有比基准数小的了,此时相撞的位置就是基准数的位置,下次,再以基准数为界限,...原创 2019-07-15 21:32:08 · 331 阅读 · 0 评论 -
数据结构-JAVA实现归并排序
归并排序 归并排序的思想:将要排序的一组数分成单个单个的数,然后采用插入排序使两个两个的数据合并成大小有序的一组一组的数组,然后在将这个一组一组的有序数组再两两合并成一个一个的有序数组,最终合成一个有序数组为止。 简单理解:先拆分成单个,然后逐级逐步合并,最后合并为一个有序的数组。如下图每个白框代表一个有序数组。 (图片来源:https://www.cnblogs.com/fivestudy/p/...原创 2019-07-15 19:46:29 · 191 阅读 · 0 评论 -
数据结构-数组、链表有序无须的时间复杂度分析
数组和链表是我们经常使用的数据结构,我们都知道数组的存储地址是连续的,链表的存储地址是不连续的,这就给我们的使用提供了多种选择。下面简单的分析一下数组和链表分别在有序和无须情况下的时间复杂度。 数组 1、有序数组的删除:数组的存储地址是连续的,我们删除数组中的某个值,首先我们要找到要删除的值,删除此值后,若此值后面还有其他值,每个值的都要向前移动一位,即索引减去1。 分析:在数组为有序的情况下,查...原创 2019-07-06 22:13:03 · 3517 阅读 · 0 评论 -
数据结构-JAVA实现简单选择排序
选择排序 选择排序的思想也非常简单,选择排序是对冒泡排序的一种改进排序放法。 简单的选择排序与冒泡排序的区别是: 冒泡: 冒泡排序是从一排数据的第一个数开始和右面的一个数进行比较,左面 比右面大则交换位置,然后第二个数和第三个数进行比较,左面比右面大就交换位置,遍历一遍之后就把最大的移动到了最右面。 选择: 选择排序相对于冒泡排序来说,宗旨是一样的,遍历一遍选出一个最大或者最小的数,确定他的位置。...原创 2019-07-13 14:53:26 · 173 阅读 · 0 评论 -
数据结构-JAVA实现插入排序
插入排序 插入排序是一种非常简单的排序方法,简单的理解起来就是:给定一串数据,先选取前两个进行比较,哪个数小,哪个数放到前面,然后再取第三个数和前两个分别比较大小,找到正确的位置。一直选取到最后一个数比较完即可。 public static void cr(int a[]){ for(int i=1;i<a.length;i++){ for(int j...原创 2019-07-13 14:38:59 · 185 阅读 · 0 评论 -
数据结构-用for循环实现一个双向链表(java实现)
用java写一个双向的链表,并用for循环实现 节点类 public class Node { int data; Node last; Node next; public Node getLast() { return last; } public void setLast(Node last) { this.l...原创 2019-01-02 21:35:06 · 628 阅读 · 0 评论 -
数据结构-for循环实现冒泡排序
for循环简介 for(语句1 ; 语句2 ; 语句3 ) {循环体} 执行时,先执行一次语句1(注意只执行一次) 之后判断语句2是否成立 1).如果成立执行循环体,之后执行语句3。再返回语句2判断条件是否成立?成立执行循环体后再执行语句3,如此直到循环体不成立则跳出循环 2)如果语句2不成立,则不执行循环体也不执行语句3直接跳出循环 例如 package learn; public class...原创 2018-09-26 13:11:02 · 1903 阅读 · 0 评论 -
数据结构-用链表创建一个队列(java实现)
队列是一种特殊的线性表,特殊之处在于它只允许在表的前端(front)进行删除操作,而在表的后端(rear)进行插入操作,和栈一样,队列是一种操作受限制的线性表。进行插入操作的端称为队尾,进行删除操作的端称为队头。(该定义来自百度百科) package text1; public class CircularArryQueue&amp;lt;E&amp;gt; { private Node head; pr...原创 2018-12-26 21:11:36 · 326 阅读 · 0 评论