H面试程序(27):字串转换

华为校园招聘笔试题(机考题目)  01. 第一题的题目大概是输入整型数组求数组的最小数和最大数之和,例如输入1,2,3,4则输出为5,当输入只有一个数的时候,  则最小数和最大数都是该数,例如只输入1,则输出为2;另外数组的长度不超过50 02. 求两个长长整型的数据的和并输出,例如输入1233333333333333 。。。 3111111111111111111111111.。。。,则输出 阅读详情

 

 

//1 字串转换
//问题描述:
//将输入的字符串(字符串仅包含小写字母‘a’到‘z’),按照如下规则,循环转换后输出:a->b,b->c,…,y->z,z->a;
//若输入的字符串连续出现两个字母相同时,后一个字母需要连续转换2次。
//例如:aa 转换为 bc,zz 转换为 ab;当连续相同字母超过两个时,第三个出现的字母按第一次出现算。
//要求实现函数:
//void convert(char *input,char* output)
//【输入】  char *input , 输入的字符串
//【输出】  char *output ,输出的字符串
//【返回】 无
//40min
//示例
//输入:char*input="abcd" 
//输出:char*output="bcde"
//输入:char*input="abbbcd" 
//输出:char*output="bcdcde"
#include<stdio.h>
#include<assert.h>
void convert(char *input,char* output)
{
	assert(input);
	assert(output);
	while(*input != '\0')  //遍历整个字符数组
	{    
         if(*input == *(input+1))  //当前字符和下一字符相同的情况
		 {
			 
            	if(*input =='z')  //因为字母‘z’的情况比较特殊,所以单独分开
				{
					*output = (*input-25);
                    *(output+1) =(*input - 24);
					output = output + 2;
                    input = input + 2;
				}
				else     //
				{
					 *output = (*input + 1);
					 *(output+1) = (*input + 2);
					 output = output + 2;
                     input = input + 2;
				}		 
            
		 }
         else   //当前字符和下一字符不相同的情况
		 {
				if(*input =='z')//因为字母‘z’的情况比较特殊,所以单独分开
				{
					*output++ = (*input-25);
					
                     input++;
					
				}
				else
				{
					 *output++ = (*input + 1);
                     input++;
				}
		 }
	
	}
    *output = '\0'; //记得在output后加上结束符号
}

int main( )
{
  char input[] = "abbbcd";
  printf("%s\n",input);
  char output[100];
  convert(input, output);
  printf("%s\n",output);
  return 0;
}


 

 

华为OD机试:字符串中整数最小和解析与多语言实现 字符串处理是编程中的基础且高频任务,涉及字符遍历、模式识别与状态管理。其核心原理在于通过有限状态机或指针迭代,高效解析特定模式(如数字序列)。在算法优化中,贪心策略常被用于求解极值问题,通过局部最优选择逼近全局最优解。本文以一道经典的华为OD机试题——“求字符串中所有整数的最小和”为例,深入剖析如何结合字符串解析与贪心算法。该题要求识别字符串中所有合法整数,并通过特定规则(负数尽可能大、正数尽可能小)使总和最小,体现了对边界条件处理和逻辑严谨性的考察。文中提供了C++、Java、Python、C和JavaS 阅读详情

相关推荐

Altium Concord Pro 的应用范围,安装,和使用范围

Altium Concord Pro 的应用范围,安装,和使用范围。保证满足两者软件的最低安装要求。 Altium Concord Pro 是配合Digapcb,和MCAD,Altium 和相应机械设计软件的基础和交换桥梁

hanzhaos的博客 1121

华为机试——字符串转换

华为机试——字符串转换 将输入的字符串(字符串仅包含小写字母’a’到’z’),按照如下规则,循环转换后输出:a->b,b->c,….y->z,z->a;若输入的字符串连续出现两个字母相同时,后一个字母连续转换2次。例如:aa转换成bc,zz转换为ab;当连续相同字母超过两个时,第三个出现的字母按第一次出现. using names

1203

别再手动找触点了!EPLAN线圈触点映像的3种显示方式与F键/Ctrl+B快捷键实战

本文详细解析EPLAN线圈触点映像的3种显示方式与F键/Ctrl+B快捷键实战技巧,帮助电气设计工程师提升图纸操作效率。通过精简编号、路径栏显示和元件旁可视化三种模式的应用场景对比,结合快捷键肌肉记忆训练法,实现触点快速定位与管理,大幅减少手动查找时间。

weixin_42522964的博客 481

(华为机试)字符串转换

字串转换 问题描述: 将输入的字符串(字符串仅包含小写字母‘a’到‘z’),按照如下规则,循环转换后输出:a->b,b->c,…,y->z,z->a; 若输入的字符串连续出现两个字母相同时,后一个字母需要连续转换2次。例如:aa 转换为 bc,zz 转换为 ab; 当连续相同字母超过两个时,第三个出现的字母按第一次出现算。 要求实现函数: void convert(char *inpu

gylltq的专栏 930

基于stm32开发的红外循迹小车

2.L298N电机驱动模块:分别是5V,12V,GND,可以通过外加电源给驱动模块供电,IN1,IN2,IN3,IN4,EN1,EN2,通过给IN口不同的电平,可以达到控制电机正反转,EN口为使能口,可以通过给EN口不同的PWM波,来达到控制小车速度,1.红外循迹模块:检测黑线的原理是向外发射红外线,当没有遇到黑线的时候,返回回来,之后返回高电平,当遇到黑线的时候,红外被吸收,返回高电平,读取相应IO口的电平就可以知道小车此时的大致位置;模块有四个输入接口,分别连接四个TT马达,驱动小车运动;

2301_81374681的博客 1万+

PTGui使用教程

PTGui使用教程为啥使用ptgui开始使用ptgui 为啥使用ptgui ptgui是一个全景拼接软件,在海思hi3559上做视频拼接的时候,需要拼接参数,这是就需要使用到ptgui,这里可以在该网站下下载ptgui:下载地址 开始使用ptgui 第一步,加载图片,我这里添加了三幅图 然后添加控制点(可以先多对准几次图像,这样会自动生成一些控制点,但是不保证准确),建议控制点不要太密集 点开镜头设置,勾选以下几个选项以及配置好镜头类型,如下图 点开优化器,在高级界面中配置如下参数,最后点

what_wrong的博客 1万+

将输入的字符串(字符串仅包含小写字母‘a’到‘z’),按照如下规则,循环转换后输出:a->b,b->c,…,y->z,z->a;若输入的字符串连续出现两个字母相同时,后一个字母需要连续转换2次。例如:

问题描述:    将输入的字符串(字符串仅包含小写字母‘a’到‘z’),按照如下规则,循环转换后输出:a->b,b->c,…,y->z,z->a;若输入的字符串连续出现两个字母相同时,后一个字母需要连续转换2次。例如:aa 转换为 bc,zz 转换为 ab;当连续相同字母超过两个时,第三个出现的字母按第一次出现算。    要求实现函数:    void convert(char

Oliver King 的小窝 4599

AI应用架构师:引领半导体良率AI预测的变革浪潮

在半导体行业这个技术密集、资本密集且竞争异常激烈的领域,良率是决定企业盈利能力的关键指标。每提升1%的良率可能意味着数亿美元的利润增长。然而,随着制程节点不断缩小至3nm、2nm甚至更先进水平,传统的良率管理方法已难以应对日益复杂的制造流程和指数级增长的数据量。本文将深入探讨AI应用架构师如何成为这场变革的核心驱动力,通过设计和实施先进的AI预测系统,将半导体良率预测从传统的"事后分析"转变为"事前预测"和"实时优化"。

AI大模型应用之禅 403

将输入的字符串(字符串仅包含小写字母‘a’到‘z’),按照如下规则,循环转换后输出:a->b,b->c,…,y->z,z->a;

 //将输入的字符串(字符串仅包含小写字母‘a’到‘z’),按照如下规则,循环转换后输出:a->b,b->c,…,y->z,z->a; //若输入的字符串连续出现两个字母相同时,后一个字母需要连续转换2次。例如:aa 转换为 bc,zz 转换为 ab; //当连续相同字母超过两个时,第三个出现的字母按第一次出现算。 #include using namespace std; voi

风雪傲月的博客 3973

两轮差速机器人运动学模型

两轮差速底盘 1.1、底盘说明 两轮差速底盘由两个动力轮位于底盘左右两侧,两轮独立控制速度,通过给定不同速度实现底盘转向控制。一般会配有一到两个辅助支撑的万向轮。 主要底盘有: 1、Turtlebot; 2、扫地机器人; 3、无人仓AGV小车; 4、轮椅; 底盘主要特点: 1、控制简单、里程计计算简单。 2、只能给定X方向速度、Z轴方向角速度。 1.2、底盘运动学分析 1.2.1、底盘模型 图1.2.1 常见的两轮差速底盘模型 1.2.2、机器人本身约束方程(物理特性) 图1.2.2 a 左侧是车的两个

su_fei_ma_su的博客 3万+

2026年紫光同创数字IC笔试试卷带答案

FPGA基础知识与设计要点摘要 本文围绕FPGA与数字IC设计核心概念,通过单选题、波形分析题、多选题和简答题形式,系统梳理了以下关键知识点: FPGA基础架构 查找表(LUT)是实现组合逻辑的基本单元(题1) CLB包含LUT、触发器和进位链,后者加速算术运算(题6,10) 布局布线优化是减少关键路径延迟的核心方法(题7) 时序分析要点 建立时间(时钟沿前数据需稳定)与保持时间(时钟沿后需保持)的定义(题2,简答1) 亚稳态成因及两级同步器处理跨时钟域信号的方法(多选题1,波形题5) 特殊设计技术 异步复

Open 116

微软实习生面经2015.4.27

2015.4.27微软实习生面经          3月中旬报名参加微软暑期预科生,苏州软件开发,4.3日线上笔试,4道编程题做出2道,当时正和女友西塘旅游ing、、、大晚上码完代码去酒吧喝喝小酒然后~~~以上纯属扯淡、、前两题的题解我会在另一篇博文中提供。          之后就是漫长的等待,直到4.20日收到通知,确定了4.27日早上9点面试,路费住宿费全报销(微软神壕!!)。面试一共三

weilaiwangl的专栏 2098

如何正确的计算两个角度的角度差?

这一步是必要的,因为它确保了无论a相对于b是在逆时针方向还是顺时针方向,d2总是正确地反映出绕圆相反方向的角度差。这样,当函数进行最后的比较时,它能够准确地比较两个方向的旋转路径并选择最短的一个。

小秋 AI SLAM 入门实战教程 4137

LeetCode刷题总结 - 面试经典 150 题 -持续更新

LeetCode刷题总结 - 面试经典 150 题 - 持续更新其他系列数组 / 字符串88. 合并两个有序数组27. 移除元素26. 删除有序数组中的重复项80. 删除有序数组中的重复项 II169. 多数元素189. 轮转数组121. 买卖股票的最佳时机122. 买卖股票的最佳时机 II55. 跳跃游戏274. H 指数380. O(1) 时间插入、删除和获取随机元素238. 除自身以外数组的乘积739. 每日温度42. 接雨水双指针125. 验证回文串392. 判断子序列167. 两数之和 II -

qq_45464560的博客 8748

老版QQ原生表情gif动态

这是老版的QQ表情,不过全是动态的的,Windows照片查看器是不会动的,可以右击用浏览器打开查看,再说一遍是老版的,只是分享给宁愿用老版也要动态的人。

win10 跳过U8环境检测的IE WebControls.rar

win10 安装u8的时候 提示IE WebControls 不通过,这个工具可以欺骗u8的检查。 跳过U8环境检测的IE WebControls。提示导入失败后,重新检测通过。

面试宝典:字符串基础

内容来自:面试宝典 字符串章节 字符串与数字的相互转换 实现strcopy 求一个字符串中连续出现次数最多的子串 求一个字符串中相同且最长的子串 实现strstr 将一句话中的单词进行倒置,标点符号不变。比如一句话:i come from tiamjin. 倒换后称为 tianjin. from come i 计算从1-n之间的中包含1个个数 转变字符串格式为原来字符...

weixin_30297281的博客 90

大中型超市收银系统(可直接运行)

光步前台收银系统系统功能:商品销售、商品退货、挂单、收银员权限、会员销售、单品取消、整单取消、商品查询、脱机销售、脱机数据上传,基本资料下载,开钱箱、小票打印、收款结算,支持多币种付款方式(现金、储值卡、礼券、微信等),支持多种促销。运行环境:.net 4.0登陆信息用户名:1001 密码:123456内置商品信息,商品编码可输入00001000 - 00010000,测试效果相关功能键F5 结算 F9挂单 F11商品查询 F8退货 Insert单品取消 Del整单取消 F12开钱箱F2 会员 Ctrl+Z退出系统 Home 锁屏 相关源码待公开

之前有面试到两个日期的大小比较方式,现在整理一下几种方法。   例子:   String beginTime=new String("2017-06-09 10:22:22");     Stri...

各种数据类型(日期/时间、integer、floating point和numeric)转换成格式化的字符串以及反过来从格式化的字符串转换成指定的数据类型。下面列出了这些函数,它们都遵循一个公共的调用习 惯:第一个参数是待格式化的值,而第二个是定义输出或输出格式的模板。 函数 返回类型 描述 例子 to_char(timestamp, text) text...

133

C# WinForm 基于DirectShow.dll编写的程序,可边预览边保存视频,音频和图片

基于微软的DirectShow.dll的二次开发1.自动识别连接的摄像头跟麦克风且可以对其进行选择(默认选中第一个)2.可录制wmv和avi两种格式的视频并且都带有音频,avi可以录制的分辨率和帧数进行选择,wmv默认进行了淸晰度优化如不喜欢可去除代码中有相关提示3.可在预览点开之后进行拍照,也可边录制视频边拍照4.添加了视频和音频的压缩功能(酌情使用)这次二次开发发现C#对DirectShow的相关信息太少,这次做完也不敢藏私共享出来,还望大家指正

LeetCode(C++)刷题计划:17-电话号码的字母组合

17-电话号码的字母组合 @Author:CSU张扬 2.1 解法一:递归法 2.2 解法二:使用队列 2.3 解法三:深度优先遍历

神奇小海螺的博客 8988

硕士211,零基础自学Java,一年拿到BAT三家offer(附面经)

引言 1、本文没有公众号和博客推广,请放心 2、Java后台开发的经验,其他岗位没有借鉴意义 3、纯发经验攒人品,有问题留言大家一起讨论,互帮互助!! 4、个人学习方法,并不一定适合每个人。 5、 学习都是自己挤时间的,过程不表。 背景 本人本科一本双非垫底的那种,硕士211。本硕电子通信,完全0基础,转行一年。 起步 1、实话说,刚决定转行的时候完全零基础一...

小码农 TT 1676

Leetcode字符串题(Java作答)

目录 13.罗马数字转整数 344.反转字符串 13.罗马数字转整数 罗马数字包含以下七种字符:I,V,X,L,C,D和M。 字符 数值 I 1 V 5 X 10 L 50 C 100 D 500 M ...

qq_45384304的博客 1044

CVPR 2024图像处理技术全解析:去噪、增强、分割与恢复的新趋势

图像处理任务中的退化问题普遍存在,噪声、模糊、低照度等干扰都会影响视觉质量。传统方法往往依赖简化假设,如将噪声视为高斯分布,但在真实场景中效果有限。近年来的技术演进开始引入物理噪声模型、Retinex理论、小波变换等先验知识,并结合深度学习进行端到端优化。同时,扩散模型凭借其对数据分布的学习能力,在图像恢复中展现出生成自然纹理的优势,但也要权衡速度与幻觉风险。在应用层面,无论是医学图像分割中的UNet骨架,还是广告牌检测中的交互式标注,都体现出不同场景下的选型差异。本文围绕CVPR 2024中图像去噪、增强

weixin_33895516的博客 393

100题 1-255简单总结

2.min栈:2个栈,存放最小值,push比较 3.子数组的最大和:遍历一遍,sum 4.在二元树中找出和为某一值的所有路径:回溯,递推,三个二叉树遍历 5.查找最小的 k个元素:大根堆不好,k个数组,o(k*(n-k)) 7.微软亚院之编程判断俩个链表是否 相交:尾节点是否相同(无环) 3种(有环) 环:(快慢指针) 8.字符串比较,链表倒置等 9 判断整数序列是不是二元查找树的后序

小人物的草稿本 840

LeetCode 8 String to Integer (string转int)

题目来源:https://leetcode.com/problems/string-to-integer-atoi/ Implementatoito convert a string to an integer. Hint:Carefully consider all possible input cases. If you want a challenge, please do not...

weixin_30488313的博客 137

迷茫的一周(刷牛客题) 2025/3/28

怀疑人生,知识学一次忘一次

yesyesyes_yes的博客 1056

linux常用命令

mvn构建的springboot项目部署linux mvn clean mvn package 部署的话有脚本,有时间找找 项目可以运行,但是打包的时候就是报编译失败 报错大概的意思是,找不到另一个服务中的(工具的一个服务)类, 解决办法:进入到工具服务类中,mvn clean install(猜测是清除本地安装的什么东西,有时间研究,还有mvn clean package是什么意思,他们之间有什...

梦想是很难很难的,所以先勇敢一点 8555
上一篇: H面试程序(7):去掉字符串中重复的数
下一篇: H面试程序(28):字符串处理转换
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值