当前位置: 首页 > news >正文

【算法训练营】字符串转成整数

字符串转成整数

  • 题目
  • 题解
  • 代码

题目

00
点击跳转: 把字符串转换为整数

题解

【题目解析】:
本题本质是模拟实现实现C库函数atoi,不过参数给的string对象
【解题思路】:

解题思路非常简单,就是上次计算的结果10,相当于10进制进位,然后加当前位的值。
例如:“123”转换的结果是
sum=0
sum
10+1->1
sum10+2->12
sum
10+3->123
本题的关键是要处理几个关键边界条件:

  1. 空字符串
  2. 正负号处理
  3. 数字串中存在非法字符

代码

class Solution {
public:int StrToInt(string str) {if(str.empty())return 0;//处理负号int flag=1;if(str[0]=='-'){flag=-1;str[0]='0';}else if(str[0]=='+'){flag=1;str[0]='0';}//遍历str 计算数int sum=0;for(int i=0;i<str.size();i++){if(str[i]<'0'||str[i]>'9'){sum=0; //要处理中间状态的数组//当123a34 碰到a时 也要把sum的值置0 返回break;}sum=sum*10+str[i]-'0';}return flag*sum;}
};

在这里插入图片描述

相关文章:

【算法训练营】字符串转成整数

字符串转成整数 题目题解代码 题目 点击跳转: 把字符串转换为整数 题解 【题目解析】&#xff1a; 本题本质是模拟实现实现C库函数atoi&#xff0c;不过参数给的string对象 【解题思路】&#xff1a; 解题思路非常简单&#xff0c;就是上次计算的结果10&#xff0c;相当于10…...

入局元宇宙,所谓的无限可能到底在哪里?

最近的热点新闻表明&#xff0c;人们似乎认为元宇宙已经走向“死亡”。但实际上&#xff0c;市场应该重新定义对元宇宙的看法&#xff0c;以及正视它最大的机会所在——游戏领域。 1937年5月6日&#xff0c;一架名为兴登堡号的巨大氢能齐柏林飞艇飞临新泽西州曼彻斯特镇上空&a…...

为什么 SSH(安全终端)的端口号是 22 !!

导读为什么 SSH&#xff08;安全终端&#xff09;的端口号是 22 呢&#xff0c;这不是一个巧合&#xff0c;这其中有个我&#xff08;Tatu Ylonen&#xff0c;SSH 协议的设计者&#xff09;未曾诉说的故事。 将 SSH 协议端口号设为 22 的故事 1995 年春我编写了 SSH 协议的最…...

k8s Label 2

在 k8s 中&#xff0c;我们会轻轻松松的部署几十上百个微服务&#xff0c;这些微服务的版本&#xff0c;副本数的不同进而会带出更多的 pod 这么多的 pod &#xff0c;如何才能高效的将他们组织起来的&#xff0c;如果组织不好便会让管理微服务变得混乱不堪&#xff0c;杂乱无…...

layui踩坑记录之form表单下的button按钮默认自动提交

首先参考下面这篇文章&#xff1a; layui form表单下的button按钮会自动提交表单的问题以及解决方案_layui form里面其他button按钮_你用点心就行的博客-CSDN博客 他说的已经很清楚了&#xff0c;我再补充&#xff08;啰嗦&#xff09;一下&#xff1a; 其实就是使用form的时…...

2-vi和vim的使用

vi和vim的区别 vi 是linux系统中内置的文本编辑器vim具有程序编辑能力 vi和vim常用的三种模式 正常模式 使用vim打开一个文件&#xff0c;就默认进入正常模式可以使用方向键【上下左右】来移动光标可以使用【删除字符/删除整行】来处理文件内容也可以使用【复制/粘贴】快捷键…...

微服务——Nacos配置管理

目录 Nacos配置管理——实现配置管理 配置管理实践 Nacos配置管理——微服务配置拉取 Nacos配置管理——配置热更新 方式一: ​编辑 方式二(推荐方式): Nacos配置管理——多环境配置共享 优先级问题 Nacos配置管理——nacos集群搭建 总结​编辑 Nacos配置管理——实现配置管…...

如何为WordPress博客网站配置免费域名HTTPS证书

文章目录 如何为WordPress博客网站配置免费域名HTTPS证书前置条件&#xff1a;步骤1 申请免费的域名HTTPS证书步骤2 将HTTP证书配置到cpolar的配置文件中2.1 创建证书文件夹2.2 修改cpolar配置文件2.3 重启cpolar服务2.4 查看后台Wordpress隧道是否在线正常2.5 用浏览器打开站点…...

React之内置的高阶组件

React之内置的高阶组件 React内置了一些高阶组件&#xff0c;以便对一些组件做特殊处理&#xff0c;从而提高代码性能。例如React.memo、React.forwardRef 注意&#xff1a;高阶组件不是Reacts视图组件 什么是高阶组件 高阶组件本质是高阶函数。高阶组件接收一个组件作为参数&…...

【kubernetes系列】flannel之vxlan模式原理

概述 在Kubernetes中要保证容器之间网络互通&#xff0c;网络至关重要。而Kubernetes本身并没有自己实现容器网络&#xff0c;而是而是借助CNI标准&#xff0c;通过插件化的方式自由接入进来。在容器网络接入进来需要满足如下基本原则&#xff1a; Pod无论运行在任何节点都可…...

PostgreSQL -- 备份恢复命令

前言 这是我在这个网站整理的笔记&#xff0c;关注我&#xff0c;接下来还会持续更新。 作者&#xff1a;RodmaChen PostgreSQL -- 备份恢复命令 一. pg_dump常用参数二. pg_dumpall三. psql四. pg_restore五.参考文章 PostgreSQL 13.7 一. pg_dump常用参数 pg_dump 把一个数据…...

【基于Spark的电影推荐系统】环境准备

概览 本科毕设做过电影推荐系统&#xff0c;但当时的推荐算法只有一个&#xff0c;现在已经忘记大部分了&#xff0c;当时也没有记录&#xff0c;因此写这个博客重新来记录一下。此外&#xff0c;技术栈由于快秋招原因来不及做过多的部分&#xff0c;因此只实现简单的功能&…...

团簇大小分布计算方法,fix ave/histo命令详解

LAMMPS是一款广泛应用于分子动力学模拟的强大软件。在模拟过程中&#xff0c;我们经常需要对系统的物理性质进行分析和统计。 fix ave/histo命令则是LAMMPS中一个非常有用的命令&#xff0c;它可以帮助我们对系统进行直方图统计分析。 本文将深入介绍fix ave/histo命令的用法和…...

CAN标准帧和拓展帧

转自&#xff1a;https://www.cnblogs.com/fengliu-/p/9277165.html CAN2.0B标准帧 CAN 标准帧信息为11个字节&#xff0c;包括两部分&#xff1a;信息和数据部分。前3个字节为信息部分。 位置 7 6 5 4 3 2 1 0 字节01 FF RTR DLC&#xff08;数据长度&#…...

android 清除缓存方法

获得应用的存储信息 private void getAppStorageInfo(String packageName){StorageStatsManager storageStatsManager (StorageStatsManager) context.getSystemService(Context.STORAGE_STATS_SERVICE);StorageManager storageManager (StorageManager) context.getSystemS…...

介绍下你们项目中各微服务之间怎么调用的?

各微服务模块之间的数据交互主要通过一些常见的通信机制进行。以下是几种常见的数据交互方式&#xff1a; RESTful API&#xff1a;REST&#xff08;Representational State Transfer&#xff09;是一种基于HTTP协议的通信机制&#xff0c;它使用标准的HTTP方法&#xff08;如…...

MySql提示:The Server Quit Without Updating PID File(…)失败 103.36.167

01问题 可能是 /usr/local/mysql/data/rekfan.pid 文件没有写的权限 。 解决办法 给予权限&#xff0c;执行 1. # chown -R mysql:mysql /var/data 2. #chmod -R 755 / usr/local/mysql/data 然后重新启动mysqld。 43.242.205 02问题 可能进程里已经存在…...

FPGA学习——按键消抖的两种实现方法

文章目录 一、按键消抖简介1.1、为什么要按键消抖 二、C4开发板原理图三、按键消抖源码3.1、方案一&#xff08;每当检测到下降沿便开始重新计数&#xff09;3.2、方案二&#xff08;检测到第一次下降沿后便开始计数&#xff09; 四、仿真代码及仿真波形图五、拓展&#xff1a;…...

SecureCRT如何将复制的内容粘贴到word中仍然保持原有字体颜色

SecureCRT如何将复制的内容粘贴到word中仍然保持原有字体颜色 QQ 109792317 说明&#xff1a;当SecureCRT加载了配色文件后&#xff0c;输出的关键字会被不同颜色高亮显示&#xff0c;但是如果复制粘贴到word中会发现成了纯文本&#xff0c;字体颜色消失了。 如何保留 &#x…...

微信小程序分享页面代码

在微信小程序中实现分享功能需要以下几个步骤&#xff1a; 1. 在app.json文件中配置分享参数&#xff0c;例如标题、路径等。示例如下&#xff1a; json { "pages": [ "pages/index/index" ], "window": { "navigationBarTit…...

《Playwright:微软的自动化测试工具详解》

Playwright 简介:声明内容来自网络&#xff0c;将内容拼接整理出来的文档 Playwright 是微软开发的自动化测试工具&#xff0c;支持 Chrome、Firefox、Safari 等主流浏览器&#xff0c;提供多语言 API&#xff08;Python、JavaScript、Java、.NET&#xff09;。它的特点包括&a…...

前端导出带有合并单元格的列表

// 导出async function exportExcel(fileName "共识调整.xlsx") {// 所有数据const exportData await getAllMainData();// 表头内容let fitstTitleList [];const secondTitleList [];allColumns.value.forEach(column > {if (!column.children) {fitstTitleL…...

基于当前项目通过npm包形式暴露公共组件

1.package.sjon文件配置 其中xh-flowable就是暴露出去的npm包名 2.创建tpyes文件夹&#xff0c;并新增内容 3.创建package文件夹...

cf2117E

原题链接&#xff1a;https://codeforces.com/contest/2117/problem/E 题目背景&#xff1a; 给定两个数组a,b&#xff0c;可以执行多次以下操作&#xff1a;选择 i (1 < i < n - 1)&#xff0c;并设置 或&#xff0c;也可以在执行上述操作前执行一次删除任意 和 。求…...

如何将联系人从 iPhone 转移到 Android

从 iPhone 换到 Android 手机时&#xff0c;你可能需要保留重要的数据&#xff0c;例如通讯录。好在&#xff0c;将通讯录从 iPhone 转移到 Android 手机非常简单&#xff0c;你可以从本文中学习 6 种可靠的方法&#xff0c;确保随时保持连接&#xff0c;不错过任何信息。 第 1…...

Spring AI 入门:Java 开发者的生成式 AI 实践之路

一、Spring AI 简介 在人工智能技术快速迭代的今天&#xff0c;Spring AI 作为 Spring 生态系统的新生力量&#xff0c;正在成为 Java 开发者拥抱生成式 AI 的最佳选择。该框架通过模块化设计实现了与主流 AI 服务&#xff08;如 OpenAI、Anthropic&#xff09;的无缝对接&…...

12.找到字符串中所有字母异位词

&#x1f9e0; 题目解析 题目描述&#xff1a; 给定两个字符串 s 和 p&#xff0c;找出 s 中所有 p 的字母异位词的起始索引。 返回的答案以数组形式表示。 字母异位词定义&#xff1a; 若两个字符串包含的字符种类和出现次数完全相同&#xff0c;顺序无所谓&#xff0c;则互为…...

用docker来安装部署freeswitch记录

今天刚才测试一个callcenter的项目&#xff0c;所以尝试安装freeswitch 1、使用轩辕镜像 - 中国开发者首选的专业 Docker 镜像加速服务平台 编辑下面/etc/docker/daemon.json文件为 {"registry-mirrors": ["https://docker.xuanyuan.me"] }同时可以进入轩…...

渗透实战PortSwigger靶场:lab13存储型DOM XSS详解

进来是需要留言的&#xff0c;先用做简单的 html 标签测试 发现面的</h1>不见了 数据包中找到了一个loadCommentsWithVulnerableEscapeHtml.js 他是把用户输入的<>进行 html 编码&#xff0c;输入的<>当成字符串处理回显到页面中&#xff0c;看来只是把用户输…...

Spring Boot + MyBatis 集成支付宝支付流程

Spring Boot MyBatis 集成支付宝支付流程 核心流程 商户系统生成订单调用支付宝创建预支付订单用户跳转支付宝完成支付支付宝异步通知支付结果商户处理支付结果更新订单状态支付宝同步跳转回商户页面 代码实现示例&#xff08;电脑网站支付&#xff09; 1. 添加依赖 <!…...