
算法
简单的算法入门,,,不定时更新
lxpqxl
这个作者很懒,什么都没留下…
展开
-
算法03_队列
队列 队列介绍 队列是一个有序列表,可以使用数组或者链表来实现 遵循先入先出的原则(先存入队列的数据,要先取出。后存入的要后取出) 样例图(使用数组模型示意图) 队列本身是有序列表,如上面的图之中maxSize是该队列的最大容量,开头,结尾分别记录队列前后端的下标(类似索引),开头会随着数据的输出而改变,结尾则是随着数据的输入而改变。 向队列加入数据的时候 ...原创 2020-05-19 07:42:41 · 931 阅读 · 0 评论 -
算法02-稀疏sparsearray数组
稀疏数组 当一个数组中大部分元素为0(null),或者为同一个值的数组时,可以使用稀疏数组来保存该数组。 稀疏数组的处理方法是: 1.记录数组一共几行几列,有多少个不同的值 2.把具有不同值得元素的行列及值记录在一个小规模的数组中,从而缩小程序的规模 如图数据大概左面这样,右边为记入的值,如果用以前的数组记入就会有10(行)X9(列)=90个元数据,但是用稀疏数组就是2(行...原创 2020-05-12 22:03:46 · 1011 阅读 · 0 评论 -
算法01-线性结构和非线性结构
数据结构包括:线性结构和非线性结构 线性结构 1.线性结构作为层、最常用的数据结构,其特点是数据元素之间存在一对一的线性关系 2.线性结构有两种不同的存储结构,即顺序存储(数组)结构和链式存储(链表)结构。顺序存储的线性表称为顺序表,顺序表中的存储元素是连续的 3.链式存储的线性表称为链表,链表中的元素不一定的连续的,元素节点中存放数据元素以及相邻元素的地址信息 4.线性结构常见的有:数组、队列、链表和栈 非线性结构 非线性结构的特点是数据元素之间可以不是一对一的关系 非线性结构包括:二维数原创 2020-05-12 20:44:43 · 958 阅读 · 0 评论 -
数据结构跟算法的关系
数据结构跟算法的关系 数据(data)结构(structure)是一门研究组织数据方式的学科,有了编程语言就有了数据结构,学好数据结构可以编写出更加漂亮,更加有效率的代码。 要学习好数据结构就要多多考虑如何将生活中遇到的问题,用程序去实现解决 程序 = 数据结构 + 算法 数据结构是算法的基础,换言之,想要学好算法,需要把数据结构学到位 ...原创 2020-05-12 20:17:38 · 1130 阅读 · 0 评论 -
java算法经典面试题
字符串匹配问题: 有两个字符串 str1=""bbcabcdab abcdabcd abde"" str2="abcdabd" 现在要判断str1是否含有str2,如果存在,就返回第一次出现的位置,如果没有,则返回-1 要求用最快的速度来完成匹配,那么你的思路是什么? KMP算法《部分匹配表》 汉诺塔游戏: 请完成汉诺塔游戏代码: 要求:1.将A塔的所有圆盘移动到C塔 2.小圆盘上不能放大圆盘 ...原创 2020-06-15 16:32:39 · 355 阅读 · 0 评论