复兴计划01-lc06

2024-01-03 04:04
文章标签 01 计划 复兴 lc06

本文主要是介绍复兴计划01-lc06,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

StringBuilder和StringBuffer的区别

1. StringBuffer和StringBuilder都是用于字符串动态拼接,但是StringBuffer拼接的函数方法的实现中用了synchornized上锁,效率较低,不过可以用于多线程以此来维护线程安全;相比之下,StringBuilder是单线程,多线程下线程不安全

lc06

在这里插入图片描述

  class Solution{public String convert(String s,int numRows){//1.如果字符串长度小于2,则按原路返回if(numRows<2) return s;//2.首先创建一个集合StrRows,将s中的字符添加到集合当中(按照N:从上到下,从左到右的顺序)  List<StringBuffer> StrRows=new ArrayList<StringBuffer>();int i=0,flag=-1;for(char c;s.toCharArray()){//2.1将字符c一个个添加到集合当中的各个子串中StrRows.get(i).append(c);//2.2若当前行为第一行或者最后一行需要改变方向——>为后面添加字符作铺垫if(i==0||i==numRows-1) flag=-flag;i+=flag;//3.从StrRows中的每个子串进行拼接成一个新的大串StringBuilder result;for(StringBuilder s_row:StrRows){result.append(s_row);}}return result.toString();
}
}///法二(不要忘记ArrayList<StringBuilder> strLists,StringBuilder是一个包装类,需要按照所需行数(numRows),strLists.add(new StirngBuilder()))
//StringBuilder,StringBuffer这些包装类,转为字符串可以利用toString()直接转public String convert(String s,int numRows){if(numRows<2) return s;//1.创建集合存入s的字符char[] c=s.toCharArray();ArrayList<StringBuilder> strLists = new ArrayList<>(); //存储输入字符,最后横取字符串拼接即可for (int i = 0; i < numRows; i++) {strLists.add(new StringBuilder());}int count=0;//层数int flag=-1;//作方向的变换for (int i = 0; i < c.length; i++) {strLists.get(count).append(c[i]);if(count==0||count==numRows-1) flag=-flag; //当输入的字符到达第一层或者最后一层时,需要作出方向改变(++,--变成+-某变量即可,改变变量的正负即可)count+=flag;}//2.横取集合字符串拼接StringBuilder res=new StringBuilder();for (int i = 0; i < numRows; i++) {res.append(strLists.get(i));}return res.toString();}
lc08字符串转换为整数

在这里插入图片描述
关键:
分为三个点,1.去掉前面的空格 2.抓住符号位±,以及默认状态(注意是否拥有±对数字位的影响)3.遍历数字位,获得数字
4.以及当遇到非数字时,直接返回
在这里插入图片描述

class Solution {public int myAtoi(String s) {char[] c = s.trim().toCharArray();if (c.length == 0) return 0;int res = 0, bndry = Integer.MAX_VALUE / 10;int i = 1, sign = 1;if (c[0] == '-') sign = -1;else if (c[0] != '+') i = 0;for (int j = i; j < c.length; j++) {if (c[j] < '0' || c[j] > '9') break;if (res > bndry || res == bndry && c[j] > '7') return sign == 1 ? Integer.MAX_VALUE : Integer.MIN_VALUE;res = res * 10 + (c[j] - '0');}return sign * res;}
}

lc09
是否为回文整数

public boolean reverse3(int num) {int temp = num;int result = 0;while (temp != 0) {int last = temp % 10;result = result * 10 + last;temp /= 10;}return num == result;}

这篇关于复兴计划01-lc06的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/564514

相关文章

hdu 2602 and poj 3624(01背包)

01背包的模板题。 hdu2602代码: #include<stdio.h>#include<string.h>const int MaxN = 1001;int max(int a, int b){return a > b ? a : b;}int w[MaxN];int v[MaxN];int dp[MaxN];int main(){int T;int N, V;s

集中式版本控制与分布式版本控制——Git 学习笔记01

什么是版本控制 如果你用 Microsoft Word 写过东西,那你八成会有这样的经历: 想删除一段文字,又怕将来这段文字有用,怎么办呢?有一个办法,先把当前文件“另存为”一个文件,然后继续改,改到某个程度,再“另存为”一个文件。就这样改着、存着……最后你的 Word 文档变成了这样: 过了几天,你想找回被删除的文字,但是已经记不清保存在哪个文件了,只能挨个去找。真麻烦,眼睛都花了。看

01 Docker概念和部署

目录 1.1 Docker 概述 1.1.1 Docker 的优势 1.1.2 镜像 1.1.3 容器 1.1.4 仓库 1.2 安装 Docker 1.2.1 配置和安装依赖环境 1.3镜像操作 1.3.1 搜索镜像 1.3.2 获取镜像 1.3.3 查看镜像 1.3.4 给镜像重命名 1.3.5 存储,载入镜像和删除镜像 1.4 Doecker容器操作 1.4

《计算机视觉工程师养成计划》 ·数字图像处理·数字图像处理特征·概述~

1 定义         从哲学角度看:特征是从事物当中抽象出来用于区别其他类别事物的属性集合,图像特征则是从图像中抽取出来用于区别其他类别图像的属性集合。         从获取方式看:图像特征是通过对图像进行测量或借助算法计算得到的一组表达特性集合的向量。 2 认识         有些特征是视觉直观感受到的自然特征,例如亮度、边缘轮廓、纹理、色彩等。         有些特征需要通

Claude Enterprise推出计划

每周跟踪AI热点新闻动向和震撼发展 想要探索生成式人工智能的前沿进展吗?订阅我们的简报,深入解析最新的技术突破、实际应用案例和未来的趋势。与全球数同行一同,从行业内部的深度分析和实用指南中受益。不要错过这个机会,成为AI领域的领跑者。点击订阅,与未来同行! 订阅:https://rengongzhineng.io/ 今天推出的Claude Enterprise计划,专为企业打造安全的

为备份驱动器制定备份计划:维护数据的3大方法

时间:2014-02-26 14:49 来源:网管之家 字体:[大 中 小]   您可能已经对您的电脑进行了备份,但其实这样还是远远不够的,其并非如您所认为的那样安全。您企业备份驱动器上的文件可能与您的主系统上的文件一样,容易受到灾难的影响。根据最近流行的恶意软件CryptoLocker的感染途径显示,连接到PC的外置驱动器——辅助硬盘驱动器,例如,用于备份的外部USB硬盘驱动器,可以像

基于开源链动 2 + 1 模式、AI 智能名片与 S2B2C 商城小程序的用户忠诚度计划

摘要:本文深入探讨了在商业环境中执行用户忠诚度计划的创新途径。通过整合开源链动 2 + 1 模式、AI 智能名片以及 S2B2C 商城小程序等先进元素,从提供福利、解决问题和创造赚钱机会三个核心方面展开详细阐述。研究表明,这些新技术和新模式的有机结合,能够为企业打造更具吸引力和影响力的用户忠诚度计划,从而实现商业效益的最大化与可持续发展。 一、引言 在当今竞争激烈且市场环境快速变化的时代,

[置顶] 2014训练计划进阶版

动态规划: 区间dp,树状dp,数位dphdu3555, sgu258, sgu390  队列优化: zoj3399 最小表示法的状态压缩DP: spoj2159  专题链接:http://acm.hust.edu.cn/vjudge/contest/view.action?cid=38881#overview 专题链接: http://acm.hust.edu.cn/vjudg

[置顶] 2014训练计划

每个专题结束后会有5小时的专题赛~ 1、hustOJ目前支持谷歌、火狐浏览器等部分浏览器。 2、欢迎吐槽~ 3、推荐该阶段用书(以下具体算法实现多数可在此书中找到详解):算法竞赛入门经典之训练指南(刘汝佳) 4、题解报告:专题中的题目多是经典题目,百度搜索即有详细解答~ 5、专题相关知识点红字标出,建议先百度红字部分,有助于专题学习~ 6、专题时间会在"ACM 今天你AC了吗?"(12

滚雪球学MyBatis(01):教程导读

MyBatis简介 前言 欢迎回到我们的MyBatis系列教程。在上期的内容中,我们详细介绍了MyBatis的基本概念、特点以及它与其他ORM框架(如Hibernate)的对比。我们还探讨了MyBatis在数据访问层中的优势,并解释了为什么选择MyBatis作为我们的持久化框架。在阅读了上期的内容后,相信大家对MyBatis有了初步的了解。 在本期内容中,我们将深入探讨MyBatis的基本配