摘要: 方法 4:使用反转算法 这个方法基于这个事实:当我们旋转数组 k 次, k\%nk%n 个尾部元素会被移动到头部,剩下的元素会被向后移动。 在这个方法中,我们首先将所有元素反转。然后反转前 k 个元素,再反转后面 n-kn−k 个元素,就能得到想要的结果。 假设 n=7n=7 且 k=3k=3 。 阅读全文
posted @ 2019-11-15 21:54 任仁人 阅读(102) 评论(0) 推荐(0) 编辑
摘要: 双指针滑动窗口解法,时间复杂度O(N)。 滑动窗口,想象一下,在一个坐标上存在两个指针begin 和i ,begin 代表滑窗的左边框,i代表滑窗的右边框。两者通过分别向右滑动,前者能使窗口之间的和减小,后者能使窗口之间的和增大。开始时二者重合,窗口的和就是重合点所在的数。 开始i向右滑动,使和变大 阅读全文
posted @ 2019-11-15 20:22 任仁人 阅读(76) 评论(0) 推荐(0) 编辑
摘要: class Solution { public: string longestCommonPrefix(vector<string>& strs) { if(strs.size()==0) return ""; if(strs.size()==1) return strs[0]; string co 阅读全文
posted @ 2019-11-15 16:53 任仁人 阅读(131) 评论(0) 推荐(0) 编辑