
数据结构与算法
无法被打垮的人
这个作者很懒,什么都没留下…
展开
-
数据结构与算法之(Java)归并排序
归并排序算法原理归并排序是建立在归并操作的一种有效的排序算法,该算法是采用分治法的一个非常典型的应用算法分析(排序的思想就是将元素无限拆分,直到无可拆分,再将可拆分的元素两两按序合并)归并原理:package algorithm.sort;import java.util.Arrays;public class MergeMain { public static void main(String args[]){ Integer arr[]={9,2,8,0,原创 2020-06-13 16:59:43 · 282 阅读 · 1 评论 -
数据结构和算法之(Java)冒泡排序
Java数据结构【2020最新】Java基础(冒泡排序):冒泡排序简介:比较相邻的元素。如果第一个比第二个大,就交换他们两个。 对每一对相邻元素作同样的工作,从开始第一对到结尾的最后一对。在这一点,最后的元素应该会是最大的数。 针对所有的元素重复以上的步骤,除了最后一个。 持续每次对越来越少的元素重复上面的步骤,直到没有任何一对数字需要比较基本概念:依次比较相邻的两个数,将小数放在前面,大数放在后面。即在第一趟:首先比较第1个和第2个数,将小原创 2020-05-27 22:51:06 · 135 阅读 · 0 评论 -
线性表之顺序表(顺序存储结构)的笔记
线性表的顺序存储结构,指的是用一段地址连续的存储单元依次存储线性表的数据元素线性表(a1,a2,…,an)的顺序存储如下:线性表的基本概念对于同一个线性表,其每一个数据元素的值虽然不同,但必须具有相同的数据类型;数据元素之间具有一种线性的或“一对一”的逻辑关系。第一个数据元素没有前驱,这个数据元素被称为开始节点;最后一个数据元素没有后继,这个数据元素被称为终端节点;除了第一个和最...原创 2020-05-04 11:32:38 · 591 阅读 · 0 评论 -
数据结构和算法笔记二
算法的时间与空间复杂度(一看就懂)算法(Algorithm)是指用来操作数据、解决程序问题的一组方法。对于同一个问题,使用不同的算法,也许最终得到的结果是一样的,但在过程中消耗的资源和时间却会有很大的区别。那么我们应该如何去衡量不同算法之间的优劣呢?主要还是从算法所占用的「时间」和「空间」两个维度去考量。时间维度:是指执行当前算法所消耗的时间,我们通常用「时间复杂度」来描述。空间维度:是...原创 2020-04-28 21:50:26 · 142 阅读 · 0 评论 -
数据结构和算法笔记一
力扣刷题平台《数据结构和算法》算法定义:在现实生活中解决问题,一般要制订一个针对具体问题的步骤和方法,以此为据实现目标,将为了解决问题所制订的步骤,方法称为算法。时间复杂度和空间复杂度:为啥执行了n+1次,是因为当i=n时(已经执行了n次了),由于判定条件i<=n,所以要再执行一次跳出循环体!!即:我们要关注主项(最高项)的阶数(x的次方)忽略函数中的常数和其他次要...原创 2020-04-26 15:06:14 · 184 阅读 · 0 评论