代码随想录DAY62

这个移动0的问题还是比较重要的 因为涉及到一种思想:快慢指针!

class Solution {

public:

void moveZeroes(vector<int>& nums) {

int slow=0,fast=0;

for(;fast<nums.size();fast++){

if(nums[fast]!=0){

swap(nums[slow],nums[fast]);

slow++;

}

}

for(;slow<nums.size();slow++){

nums[slow]=0;

}

}

};

class Solution {

public:

void rotate(vector<int>& nums, int k) {

int i=0,j=(k%(nums.size())-1);

if(k==0)

return;

reverse(nums.begin(),nums.end());

reverse(nums.begin(),nums.begin()+j+1);

reverse(nums.begin()+j+1,nums.end());

}

};

第二题 主要是左旋和右旋的问题 还是要搞清楚!右旋是先反转整个字符串

class Solution {

public:

int pivotIndex(vector<int>& nums) {

int sum=0;

int leftsum=0;

int rightsum=0;

for(int i=0;i<nums.size();i++){

sum+=nums[i];

}

for(int i=0;i<nums.size();i++){

rightsum=sum-leftsum-nums[i];

if(leftsum==rightsum){

return i;

}

leftsum+=nums[i];

}

return -1;

}

};

!!! 注意注意注意 不排序不能比较数值 !!!!

相关推荐
Wect33 分钟前
LeetCode 5. 最长回文子串:DP + 中心扩展
前端·算法·typescript
糖果店的幽灵36 分钟前
决策树详解与sklearn实战
算法·决策树·sklearn
Lewiis39 分钟前
趣谈排序算法
算法·排序算法
ComputerInBook1 小时前
数字图像处理(4版)——第 8 章——图像压缩与水印(上)(Rafael C.Gonzalez&Richard E. Woods)
人工智能·算法·计算机视觉·图像压缩·图像水印
刀法如飞1 小时前
Python列表去重:从新手三连到高阶特技,20种解法全收录
python·算法·编程语言
minji...1 小时前
算法题 动态规划
算法·动态规划
水蓝烟雨2 小时前
3337. 字符串转换后的长度 II
算法·leetcode
MegaDataFlowers2 小时前
SiliconCompiler workflow
算法
_日拱一卒2 小时前
LeetCode:226翻转二叉树
数据结构·算法·leetcode
踩坑记录2 小时前
leetcode hot100 64. 最小路径和 medium 递归优化
leetcode·深度优先