摘要: 应用场景 在迷宫、棋盘等问题中,经常需要使用方向数组。 一般的“寻路”类问题都可以使用方向数组来编程求解。 示例 #include <iostream> using namespace std; int dirx[4] = {-1, 0 , 1, 0}; //x direct int diry[4] 阅读全文
posted @ 2020-11-28 19:29 箐茗 阅读(503) 评论(0) 推荐(0) 编辑
摘要: 两数之和 暴力解法 解题思路: 两个for循环嵌套,暴力枚举两个数字。 时间复杂度:$O(n^2)$ 空间复杂度:$O(1)$ for循环+二分查找 时间复杂度:$O(nlogn)$ 空间复杂度:$O(1)$ for循环+哈希函数 时间复杂度:$O(n)$ 空间复杂度:$O(n)$ 双指针法 左右端 阅读全文
posted @ 2020-11-28 18:36 箐茗 阅读(57) 评论(0) 推荐(0) 编辑
摘要: 关于单调栈的基本性质和简单应用在线性表小结之队列与栈已经做了比较详细介绍,这里主要针对单调栈在实际解决问题中的应用进行补充例举与总结。 逛街 解题思路 从左往右(1~n)单调递减入栈,依次记录栈中元素个数(ans[]),在从右往左(n~1)单调递减入栈,依次累加栈中元素个数(ans[]),最后依次输 阅读全文
posted @ 2020-11-28 15:00 箐茗 阅读(97) 评论(0) 推荐(0) 编辑