![](https://img-blog.csdnimg.cn/20201014180756918.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
算法
qiufengyouyang1
这个作者很懒,什么都没留下…
展开
-
链表
定义链表是一种物理上非连续、非顺序的存储结构,数据元素之间的顺序是通过每个元素的指针关联的。链表由一系列节点组成,每个节点一般至少会包含两部分信息:一部分是元素数据,另一部分是指向下一个元素指针。与数组相比,链表具有其优势:1.链表克服了数组需要提前设置长度的缺点,在运行时可以根据需要随意添加元素;2.计算机的存储空间并不总是连续可用的,而链表可以灵活地使用存储空间,还能更好地对计算机的...原创 2019-12-05 16:22:19 · 146 阅读 · 0 评论 -
队列
队列它只允许在表的前端(front)进行删除操作,而在表的后端(rear)进行插入操作。队列只允许在一端插入,在另一端删除,所以只有最早进入队列的元素才能最先从队列中删除,故队列又称为先进先出(FIFO—first in first out)线性表。单向队列只能一段删除一端插入,由于队列长度是固定的,当元素删除之后,位置就空下来,但是插入的时候却不能使用这些位置。所以采用循环队列java...原创 2019-12-03 19:45:09 · 119 阅读 · 0 评论 -
栈
栈概念是一种只能在一端进行插入和删除操作的特殊线性表。它按照先进后出的原则存储数据,先进入的数据被压入栈底,最后的数据在栈顶,需要读数据的时候从栈顶开始弹出数据(最后一个数据被第一个读出来)后进先出(LIFO, Last In First Out)先进后出例子:羽毛球筒为例,羽毛球筒就是一个栈,刚开始羽毛球筒是空的,也就是空栈,然后我们一个一个放入羽毛球,也就是一个一个push进栈,当...原创 2019-12-02 21:05:21 · 157 阅读 · 0 评论 -
插入排序
直接插入排序基本思想是每一步将一个待排序的记录,插入到前面已经排好序的有序序列中去,直到插完所有元素为止。public static int[] sort(int[] array){ int j; //从下标为1的元素开始选择合适的位置插入,因为下标为0的只有一个元素,默认是有序的 for(int i = 1 ; i < array.leng...原创 2019-12-02 20:32:24 · 70 阅读 · 0 评论 -
选择排序
对于冒泡排序而言,每次都需要元素比较,元素交换次数较多的问题选择排序是每一次从待排序的数据元素中选出最小的一个元素,存放在序列的起始位置,直到全部待排序的数据元素排完。分为三步:①、从待排序序列中,找到关键字最小的元素②、如果最小元素不是待排序序列的第一个元素,将其和第一个元素互换③、从余下的 N - 1 个元素中,找出关键字最小的元素,重复(1)、(2)步,直到排序结束。public...原创 2019-12-02 20:15:04 · 65 阅读 · 0 评论 -
冒泡排序
冒泡排序的英文Bubble Sort,是一种最基础的交换排序。这种排序算法的每一个元素都可以像小气泡一样,根据自身大小,一点一点向着数组的一侧移动。冒泡算法的运作规律如下:①、比较相邻的元素。如果第一个比第二个大,就交换他们两个。②、对每一对相邻元素作同样的工作,从开始第一对到结尾的最后一对。这步做完后,最后的元素会是最大的数(也就是第一波冒泡完成)。③、针对所有的元素重复以上的步骤,除...原创 2019-11-26 18:44:20 · 108 阅读 · 0 评论 -
数据结构--数组
java的数组使用在Java中,数组是用来存放同一种数据类型的集合,注意只能存放同一种数据类型(Object类型数组除外)。1.数组声明方式数据类型 [] 数组名称 = new 数据类型[数组长度];数据类型 [] 数组名称 = {数组元素1,数组元素2,…}//声明数组1,声明一个长度为3,只能存放int类型的数据int [] myArray = new int[3];...原创 2019-11-26 17:24:38 · 87 阅读 · 0 评论 -
数据结构和算法
数据结构数据结构是计算机存储、组织数据的方式,指相互之间存在一种或多种特定关系的数据元素的集合。一、数据结构的基本功能①、如何插入一条新的数据项②、如何寻找某一特定的数据项③、如何删除某一特定的数据项④、如何迭代的访问各个数据项,以便进行显示或其他操作二、常用的数据结构数组 栈 队列 链表 树 hash 堆算法算法简单来说就是解决问题的步骤。一、算法的五个特征①、有穷性:...原创 2019-11-26 17:12:22 · 658 阅读 · 1 评论