![](https://img-blog.csdnimg.cn/20190918140012416.png?x-oss-process=image/resize,m_fixed,h_224,w_224)
数据结构与算法
用最简单的思路把算法讲明白!
测试开发小白变怪兽
这个作者很懒,什么都没留下…
展开
-
排序之冒泡、插入和选择
写在前面:所有算法均为 Python3 实现,关键是理解实现思路。 冒泡排序 冒泡排序只会操作相邻的两个数据。每次冒泡操作都会对相邻的两个元素进行比较,看是否满足大小关系要求,如果不满足就让它俩互换。一次冒泡会让至少一个元素移动到它应该在的位置,重复 n 次,就完成了 n 个数据的排序工作。 示意图: 可以看到,只有第一次和第二次冒泡有变化,在没有数据交换时,已经完成了排序,仅此在判断无数据交换...原创 2020-04-10 13:49:20 · 91 阅读 · 0 评论 -
单调栈
最近在刷 LeetCode 的时候被时间复杂度困了好久,查看别人的题解,原来用到了单调递减栈,于是详细学习了一下记录下来(PS:具体可参考LeetCode | 739.每日温度)。 什么是单调栈? 单调栈分为单调递增栈和单调递减栈,单调递增栈即栈内元素保持单调递增的栈,同理单调递减栈即栈内元素保持单调递减的栈,跟单调队列差不多,但是只用到它的一端,利用它可以用来解决一些ACM/ICPC和OI的题目...原创 2019-07-22 20:08:58 · 126 阅读 · 0 评论