芝士算法(双指针篇 1.0)

这是个算法

对的对的

这里只会有 煮啵所完成的算法题的记录

愿对你有帮助 )

目录

移动零

复写零

快乐数

盛最多水的容器


移动零

移动零

for(int cur = 0, dest = -1 ; cur < nums.length;cur++){

if(numscur != 0){

dest++;

int tmp = numscur;

tmp = numsdest ;

numsdest = numscur;

numscur = tmp;

}

}

复写零

复写零

int cur = 0 ;

int dest = -1;

int n = arr.length;

//1.找到要复写的数

while(cur < n){

if(arrcur != 0){

dest++;

}else{

dest+=2;

}

if(dest >= n -1 )

break;

cur++;

}

//2.dest越界 处理边界

if(dest == n){

arrn - 1 = 0;

cur --;

dest -= 2;

}

//3.开始复写操作

while(cur != -1){

if(arrcur != 0){

arrdest-- = arrcur--;

}else{

arrdest -- = 0;

arrdest -- = 0;

cur--;

}

}

快乐数

快乐数

public int getNum(int n){

int sum = 0;

while(n != 0){

int n1 = n%10;

sum += n1 *n1;

n = n / 10;

}

return sum;

}

int slow = n;

int fast = getNum(n);

while(slow != fast){

slow = getNum(slow);

fast =getNum(getNum(fast)) ;

}

// if(slow == 1)

// return true;

// return false;

return slow == 1;

盛最多水的容器

盛最多水的容器

int left = 0;

int right = height.length - 1;

int ret = 0;

while(left != right){

int v = Math.min(heightleft,heightright) * (right - left);

ret = Math.max(ret,v);

if(heightright < heightleft)

right--;

else

left++;

}

return ret;

相关推荐
万年咸鱼几秒前
Java Classpath 详解:从原理到实战
java
鹿角片ljp12 分钟前
从 Kimi Cyber Reasoning 学习网络安全推理数据集:从 Reasoning SFT 到安全 Agent 数据设计
数据结构·算法
Ivanqhz15 分钟前
矩阵引擎的数据流模式与 BM1684X 架构
java·服务器·网络·深度学习·神经网络
小蒜学长15 分钟前
大学生健康饮食的智慧管理系统(代码+数据库+LW)
java·后端·springboot·大学生·健康饮食
计算机毕设定制辅导-无忧学长16 分钟前
《基于SpringBoot的中学教师数字胜任力测评网站的设计与实现》
java·vue.js·spring boot·mysql·中学教师数字胜任力测评网站
智慧物业老杨22 分钟前
人机协同的物业服务重构:技术落地路径与系统化思考
java·大数据·人工智能·重构·系统架构
小蒜学长23 分钟前
基于Java的论坛数据可视化分析系统的设计与实现(代码+数据库+LW)
java·spring boot·后端·数据可视化·论坛系统
许彰午38 分钟前
52-useWebSocket自动重连
java·低代码·架构
青山木41 分钟前
RocketMQ 入门到原理(一):整体架构与消息的生命周期
java·分布式·后端·中间件·架构·rocketmq
xcl09251 小时前
上海24小时自助健身房系统软件开发实战与架构解析
java·spring boot