![](https://img-blog.csdnimg.cn/20201014180756918.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
算法
文章平均质量分 87
博主今年会逐渐进军算法,谁不想去大厂见见市面呢.一条必由之路,希望能把我自己的收获和感悟记录下来
浅辄学编程
Java、Spider
展开
-
Qz学算法-数据结构篇(插入、希尔)
希尔排序是希尔(Donald Shell)于1959年提出的一种排序算法。希尔排序也是一种插入排序,它是简单插入排序经过改进之后的一个更高效的版本,也称为缩小增量排序。原创 2023-02-28 23:11:41 · 123 阅读 · 0 评论 -
Qz学算法-数据结构篇(冒泡、选择)
选择式排序也属于内部排序法,是从欲排序的数据中,按指定的规则选出某一元素,再依规定交换位置后达到排序的目的。原创 2023-02-28 23:08:19 · 116 阅读 · 0 评论 -
Qz学算法-数据结构篇(排序)
一般情况下,算法中的基本操作语句的重复执行次数是问题规模的某个函数,用T(n)表示,若有某个辅助函数f(n),使得当n趋近于无穷大时,T(n)/f(n)的极限值为不等于零的常数,则称f(n)是T(n)的同数量级函数。说明:平方阶O(n^2)就更容易理解了,如果把O)的代码再嵌套循环一遍,它的时间复杂度就是O(n^2),这段代码其实就是嵌套了2层n循环,它的时间复杂度就是O(n*n),即O(n^2)如果将其中一层循环的n改成m,那它的时间复杂度就变成了O(m*n)T(n)不同,但时间复杂度可能相同。原创 2023-02-28 23:05:55 · 86 阅读 · 0 评论 -
Qz学算法-数据结构篇(表达式、递归)
从右至左扫描表达式,遇到数字时,将数字压入堆栈,遇到运算符时,弹出栈顶的两个数,用运算符对它们做相应的计算(栈顶元素和次顶元素),并将结果入栈:重复上述过程直到表达式最左端,最后运算得出的值即为表达式的结果。扫描表达式,遇到数字时,将数字压入堆栈,遇到运算符时,弹出栈顶的两个数,用运算符对它们做相应的计算(次顶元素和栈顶元素),并将结果入栈:重复上述过程直到表达式最右端,最后运算得出的值即为表达式的结果。支持小括号和多位数整数,因为这里我们主要讲的是数据结构,因此计算器进行简化,只支持对整数的计算。原创 2023-02-28 13:54:07 · 299 阅读 · 0 评论 -
Qz学算法-数据结构篇(链表、栈)
链表是以节点的方式来存储,是链式存储每个节点包含data域,next域:指向下一个节点.如图:发现链表的各个节点不一定是连续存储链表分带头节点的链表和没有头节点的链表,根据实际的需求来确定栈的英文为(stack)栈是一个先入后出(FILO-First In LastOut))的有序列表。栈(stack)是限制线性表中元素的插入和删除只能在线性表的同一端进行的种特殊线性表。允许插入和删除的一端,为变化的一端,称为栈顶(Top),另端为固定的一端,称为栈底(Bottom)。原创 2023-02-28 13:52:44 · 101 阅读 · 0 评论 -
Qz学算法-数据结构篇(稀疏数组、队列)
队列是一个有序列表,可以用数组或是链表来实现。遵循先入先出的原则。即:先存入队列的数据,要先取出。后存入的要后取出示意图:(使用数组模拟队列示意图)这里笔者认为,front和rear取-1时刚好的,因为在数组中.第一个数据的下标是以0开始,所以这两个值都取-1是没有任何问题的,这代表了队头和队尾处于空的状态,后续只要有第一个元素加入那么这rear这个变量都会变为0,后续有数据加入就会自增1,出一个数据front就会自增1。原创 2023-02-28 13:50:28 · 195 阅读 · 0 评论 -
Qz学算法-数据结构篇(引入)
数据data结构(structure)是一门研究组织数据方式的学科,有了编程语言也就有了数据结构学好数据结构可以编写出更加漂亮,更加有效率的代码。要学习好数据结构就要多多考虑如何将生活中遇到的问题,用程序去实现解决程序=数据结构+算法数据结构是算法的基础,换言之,想要学好算法,需要把数据结构学到位。所以说,要想算法好,学好数据结构是很有必要的,这要求我们要多想,多思考,在下面的基本结构中会有博主的个人思考,如果有小伙伴看了觉得有所启发,还请来个三连。原创 2023-02-23 22:44:12 · 74 阅读 · 0 评论