![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
数据结构与算法
脚踏实地,步步前行
这个作者很懒,什么都没留下…
展开
-
数据结构与算法(零)是什么,为啥学,怎么学?
一.数据结构与算法是什么数据结构就是数据的存储结构。也就是数据怎么存,举个例子:一个一个存,还是一组一组地存?算法就是操作数据的方法。从头开始一个一个找,还是从尾开始找,都属于操作数据的方法。二.学它有啥用?1)代码的性能更好,程序跑得更快,更稳定。2)算法是一种方法,一种思想,可以用在生活的其他方面3)锻炼脑袋瓜子的思维能力。三.为什么把两个并列在一块,两者有什么关系?算法直接作...原创 2019-08-03 21:14:01 · 256 阅读 · 0 评论 -
数据结构与算法(一)怎么判断算法的好坏
怎么判断算法的好坏一 评价的的指标数据结构与算法最直观的目标就是要提高代码的性能。性能体现有两点:快和省。二 怎么做评价1.原始的评价方式那么代码写好了,怎么知道它够不够快,够不够省?最简单的方法,就是拉出来溜溜。官方点叫事后统计法。直接在把代码跑一遍,统计跑了多久,监控花了多少内存。这种方法看起来没毛病,不过真正去实践的话,会发现有两个弊端:1)我在我的电脑(i9处理器)代码跑了...原创 2019-08-03 23:15:53 · 1703 阅读 · 0 评论 -
数据结构与算法(二)怎么判断算法的好坏(下)
通过上一篇的了解,我们可以用时间复杂度和空间复杂度来判断算法的快慢和占用内存大小,从而判断算法的好坏.应用时间复杂度时发现的问题不过在不同的情况下,同一算法在不同情况下,时间复杂度不一样.举个例子,从数组中找一个变量x,如果数组中第一个元素正好是要查找的变量 x,那就不需要继续遍历剩余n-1个数据,这个时候时间复杂度就是O(1);如果数组中不存在该元素,那就要把整个数组遍历一遍,时间复杂度就...原创 2019-08-05 10:22:42 · 273 阅读 · 0 评论 -
数据结构与算法(三)十大数据结构之一--数组
从这一篇开始正式学习十大数据结构.一 什么是数组用一组连续的内存空间来存储一组相同类型的数据.二 为啥用它(优点)因为内存空间是连续的,所以查找数据里面的元素很方便.三 在实践中发现的问题(缺点)缺点有二:插入和删除太低效了;不支持动态扩容.1.为什么低效如果在数组末尾插入元素还好,如果在开头插入元素,所有元素都要后移一位,平均的时间复杂度是O(n),删除元素同理.2.怎么提...原创 2019-08-05 11:28:25 · 82 阅读 · 0 评论 -
数据结构与算法(四)十大数据结构之二--链表(上)
但是v原创 2019-08-05 23:14:45 · 76 阅读 · 0 评论 -
数据结构与算法(四)十大数据结构之二--链表(下)
学完链表就要开始手撕代码了.一 常见的链表操作须掌握以下五种:单链表反转;检测链表中的环;合并两个有序链表;删除链表倒数第n个结点;求链表的中间结点....原创 2019-08-22 14:38:50 · 79 阅读 · 0 评论