基础算法—双指针+模拟篇

双指针

双指针法(快慢指针法):通过一个快指针和慢指针在一个for循环下完成两个for循环的工作。

  • 暴力解法时间复杂度:O(n^2)
  • 双指针时间复杂度:O(n)

双指针法(快慢指针法)在数组和链表的操作中是非常常见的,很多考察数组和链表操作的面试题,都使用双指针法。

相关题目

27. 移除元素

思路

移除元素 - 移除元素 - 力扣(LeetCode)

26. 删除有序数组中的重复项

思路

删除有序数组中的重复项

283. 移动零

思路

移动零 - 移动零 - 力扣(LeetCode)

844. 比较含退格的字符串

思路

比较含退格的字符串

977. 有序数组的平方

思路

有序数组的平方

5. 最长回文子串

思路

中心扩散法

模拟行为

模拟类的题目在数组中很常见,不涉及到什么算法,就是单纯的模拟,十分考察大家对代码的掌控能力。

在这道题目中,我们再一次介绍到了循环不变量原则,其实这也是写程序中的重要原则。

相关题目

54. 螺旋矩阵

思路

螺旋矩阵

剑指 Offer 29. 顺时针打印矩阵

思路

模拟边界

59. 螺旋矩阵 II

思路

螺旋矩阵 II - 螺旋矩阵 II - 力扣(LeetCode)

48. 旋转图像


基础算法—双指针+模拟篇
https://yztldxdz.top/2022/11/02/基础算法—双指针+模拟篇/
发布于
2022年11月2日
许可协议