逆波兰表达式:计算包含括号的四则运算表达式

2022-03-06
阅读 6 分钟
2.3k
而这对于计算机进行求取结果来说,并不是一个最优的方案,毕竟每次读取到一个运算符,都得判断一次优先级,并且需要确定两个计算数的目标位置。在四则运算的基础之上,还在添加一个括号的使用,这将更为复杂,中缀表达式将更加对计算机不友好。那什么样的表达式结构会是计算机较为优化的呢?

拓扑排序:求取拓扑序列

2022-02-24
阅读 13 分钟
1.6k
通俗讲就是按活动的先后次序进行排序的序列,并且每一个顶点只出现一次,它可以表述出完成某一项活动所需要的前置活动都有哪一些!当然,一个图的拓扑排序不唯一。

滑动窗口法:寻找最长子序列

2022-02-21
阅读 2 分钟
1.9k
滑动窗口法就是在不断地调整子序列地起始位置与终止位置,从而得出我们想要的结果。滑动窗口法的起始与终止节点的移动的目的即为求解子序列的最优化处理,其基本的思路如下:

快慢指针法

2022-02-21
阅读 2 分钟
1.4k
快慢指针法指的就是操作数组、链表及字符串等使用两个起点相同但前进步数不同的指针。相对于利用多次循环解决问题,快慢指针法的时间复杂度较低,执行效率高。对于快慢指针法根据题目可供调整的无非就为两点:

排序算法的简单认识

2022-02-21
阅读 4 分钟
930
在进行很多便捷算法之前总是要实现对象的有序化,而这就将使用到排序相关的算法,即使目前诸多高级语言已然完成对于排序算法的封装,用户只需导入对应库文件即可调用排序算法完成排序,无需手写排序算法,但具体的排序算法的选择就必须对于排序算法有所认识。本文就将介绍两个简单的排序算法:选择排序与冒泡排序。

KMP 算法:快速匹配字符字串

2022-02-21
阅读 4 分钟
1.4k
一般是适用于字符串进行比对或者匹配的场景之下,基本概括为在字符串不匹配,需进行下一次匹配时,利用已知的已匹配的字符串(文本内容)避免从头开始匹配带来的浪费。

欧拉函数:求小于等于n且与n互质的数的个数

2022-02-15
阅读 2 分钟
2.5k
求小于等于n且与n互质的数的个数互质穷举法互质:两个数互质代表两者最大公约数为1最大公约数求法:辗转相除法,最小公倍数:较大值除以最大公约数乘以较小值辗转相除法:较大的数a取模较小的数b,得取模值c若取模值等于0 则最大公约数为取模值,否则继续下一步a与c再次取模,回到第二步 {代码...} 穷举到n,一一判断该...
封面图