java数据结构与算法刷题-----牛客,华为机试:HJ2 计算某字符出现次数

牛客网华为机试全攻略:从零基础到高分通过的完整指南 本文提供了一份详尽的牛客网华为机试备考指南。文章系统性地讲解了华为机试的规则、评分机制,并重点剖析了如何高效利用牛客网平台进行针对性训练。从零基础入门到高分进阶,涵盖了语言选择、刷题路径、时间管理、常见避坑策略以及考前冲刺计划,旨在帮助考生系统化备考,在华为机试中取得优异成绩。 阅读详情
java数据结构与算法刷题目录(剑指Offer、LeetCode、ACM)-----主目录-----持续更新(进不去说明我没写完):https://blog.youkuaiyun.com/grd_java/article/details/123063846

在这里插入图片描述

  1. 思路分析
  1. 依次遍历字符串,把每个字符的ASCII码(忽略大小写)计算出来,然后依次比较
  1. 代码
    在这里插入图片描述
import java.util.Scanner;
public class Main{
    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);

        while(scanner.hasNext()){
            String str = scanner.nextLine();//字符串
            int word = scanner.next().charAt(0);//要统计出现次数的字母
            word = word>=97?word-97:word-65;//忽略大小写
            int sum = 0;

            for(int i = 0;i<str.length();i++){
                int c = str.charAt(i);
                c = c>=97?c-97:c-65;//忽略大小写
                if(c==word ){
                    sum++;
                }
            }
            System.out.println(sum);
        }
    }
}

刷题一定要坚持,总结套路,不单单要把题做出来,要举一反三,也要参考别人的思路,学习别人解题的优点,找出你觉得可以优化的点。

  1. 单链表解题思路:双指针、快慢指针、反转链表、预先指针
  1. 双指针:对于单链表而言,可以方便的让我们遍历结点,并做一些额外的事
  2. 快慢指针:常用于找链表中点,找循环链表的循环点,一般快指针每次移动两个结点,慢指针每次移动一个结点。
  3. 反转链表:通常有些题,将链表反转后会更好做,一般选用三指针迭代法,递归的空间复杂度有点高
  4. 预先指针:常用于找结点,比如找倒数第3个结点,那么定义两个指针,第一个指针先移动3个结点,然后两个指针一起遍历,当第一个指针遍历完成,第二个指针指向的结点就是要找的结点
  1. 数组解题思路:双指针、三指针,下标标记
  1. 双指针:多用于减少时间复杂度,快速遍历数组
  2. 三指针:多用于二分查找,分为中间指针,左和右指针
  3. 下标标记:常用于在数组范围内找东西,而不想使用额外的空间的情况,比如找数组长度为n,元素取值范围为[1,n]的数组中没有出现的数字,遍历每个元素,然后将对应下标位置的元素变为负数或者超出[1,n]范围的正数,最后没有发生变化的元素,就是缺少的值。
  1. 栈解题思路:倒着入栈,双栈
  1. 倒着入栈:适用于出栈时想让输出是正序的情况。比如字符串’abc’,如果倒着入栈,那么栈中元素是(c,b,a)。栈是先进后出,此时出栈,结果为abc。
  2. 双栈:适用于实现队列的先入先出效果。一个栈负责输入,另一个栈负责输出。
牛客刷题笔记-华为机试(一) 1、HJ15 输入一个int型的正整数,计算出该int型数据在内存中存储时1的个数 import java.util.*; public class Main{ public static void main(String[] args){ Scanner sc = new Scanner(System.in); int n = sc.nextInt(); String b = Integer.toBinaryString(n); in 阅读详情

相关推荐

环保 HJ212协议解析

由于是做环保相关的,有时需要对212协议进行拆包和解包。HJ212协议是一种字符串协议,数据传输通讯包主要由包头、数据段长度、数据段、CRC校验、包尾组成,其中“数据段”内容包括请求编码、系统编码、命令编码、密码、设备唯一标识、总包数、包号、指令参数。请求编码为请求的时间戳,系统编码ST统一规定为22,命令编码CN为该数据包的时间类型,访问密码、设备唯一标识在对接时由平台提供,指令参数为数据内容。通讯协议的数据结构如图4所示。 图4 通讯协议的数据结构 6.1.1通讯包结构组成 名称 类型 长度

ccf19881030的专栏 2万+

牛客网:计算某字符出现次数(java)

写出一个程序,接受一个由字母、数字和空格组成的字符串,和一个字符,然后输出输入字符串中该字符的出现次数。(不区分大小写字母)第一行输入一个由字母、数字和空格组成的字符串,第二行输入一个字符(保证该字符不为空格)。输出输入字符串中含有该字符的个数。(不区分大小写字母)数据范围: (java)

weixin_68917793的博客 255

【牛客网华为机试】HJ45 名字的漂亮度

题目 描述 给出一个名字,该名字有26个字符组成,定义这个字符串的“漂亮度”是其所有字母“漂亮度”的总和。 每个字母都有一个“漂亮度”,范围在1到26之间。没有任何两个不同字母拥有相同的“漂亮度”。字母忽略大小写。 给出多个名字,计算每个名字最大可能的“漂亮度”。 本题含有多组数据。 输入描述: 整数N,后续N个名字 输出描述: 每个名称可能的最大漂亮程度 示例1 输入: 2 zhangsan lisi 输出: 192 101 解题思路 (1)定义漂亮度【1-26】分,对

202xxx的博客 5148

【Java算法】HJ2 计算某种字符出现的次数

根据字符串忽略大小写的方法 equalsIgnoreCase 和 list的size得出结果

XiaoChen~Coder 844

Java 解析国标hj212协议

Java解析环保污染物hj212协议,java项目导入eclipse运行即可,直接调用即可。有什么问题可以给我留言。

java处理HJ212数据采集解析数据处理入库

1.hj212 2015、2017皆可以测试 2.本项目测试都可以使用,主要数据存储为mongdb数据库, 3.根据mn和站点号码绑定在一起 4.数据异常,数据超标做了一些处理 本文参考博客使用更加方便!https://blog.youkuaiyun.com/weixin_44106334/article/details/110219786

牛客网:华为机试刷题记录

本文主要是想记录一下华为机试刷题过程中的总结

qq_46119575的博客 1541

Simulink/Requirements Toolbox 学习(一):概述

编写、导入、导出需求并使需求正式化;两种创建需求的模块:需求编辑器、需求透视;描述需求的方式:文本、图像和关键字;通过导入和导出需求文件,与第三方需求管理工具(例如 Microsoft Word、Microsoft Excel®、IBM DOORS和 IBM DOORS Next)集成。涉及模块:Requirements Eidtor、Requirements Table等;

859

【Java】 牛客网华为机试108题汇总

明明想在学校中请一些同学一起做一项问卷调查,为了实验的客观性,他先用计算机生成了N个1到1000之间的随机整数(N≤1000),明明想在学校中请一些同学一起做一项问卷调查,为了实验的客观性,他先用计算机生成了N个1到1000之间的随机整数(N≤1000),* 对于其中重复的数字,只保留一个,把其余相同的数去掉,不同的数对应着不同的学生的学号。对于其中重复的数字,只保留一个,把其余相同的数去掉,不同的数对应着不同的学生的学号。* 写出一个程序,接受一个十六进制的数,输出该数值的十进制表示。

张伟的专栏 2706

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

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

weixin_42522964的博客 481

国科大——形式语言与自动机理论(0812课程)——作业

此次作业题考察,包括但不限于有限自动机、无限自动机、正则文法、正则表达式以及正则语言的性质,题考查下推自动机相关的知识,题考查图灵机相关的知识。此课程建议本科学习过课程的同学选修,成绩占比:考试100%。此课程虽然留有作业,但可做也可不做,且不考勤。

qq_54145399的博客 707

牛客华为题库刷题笔记

笔记

qq_42762496的博客 721

《工程测量学》笔记/期末复习资料

《工程测量学》笔记/期末复习资料。

@HNUSTer的博客 5566

题解 | 【LittleXi] 牛客小白月赛85 ACDF

休完六天假的同事仿佛涅槃重生。1.浙江省建行科技岗开发运维方向,工资N,包吃包住2.浙江省联通杭州运营中心,前端方向,工资N+5,不包住宿3.浙江交投集团下属高信技术有限公司,交投集团的管培。被华子录取的那一天,一切都将作废,之前的所有面试都作废,之前的所有offer都作废,之前的硕士学历作废,之前的本科学历作废,星星作废,月亮作废,银河系作废。今天这个面试时间太长了一个半小时,只挑了一些有参考价值的问题,因为问项目问的特别多,很多问题都是结合着项目去问的问项目UDP和TCP区别,应用场景TCP为什么是。

2301_79125642的博客 1014

Crazyflie 2.1固件刷写与地址配置全攻略:从开箱到连接Crazyswarm

本文详细介绍了Crazyflie 2.1微型无人机的固件刷写、地址配置及与Crazyswarm系统的集成方法。从开箱检查到多机协同飞行,涵盖了硬件准备、固件刷写、无线电地址修改等关键步骤,帮助用户快速实现集群飞行控制。特别针对Crazyswarm系统集成提供了实用配置示例和调试技巧。

weixin_42530458的博客 405

Wiley:International Journal for Numerical Methods in Biomedical Engineering投稿流程

中间过程省略,这个出版社很人性化,投稿的web UI也很好看。上传word之后,一步步跟着走就行,不用填太多东西。不要最后在最后检查阶段,重新上传word文件,这样会导致,之前针对word的操作全部改变。

Everyday try to become better -Kobe Bryant 2546

【24届】泰康人寿2024年全球校园招聘正式启动!

机械制造2024笔面经# 本硕211,投的结构岗,一开始是自我介绍,然后是项目经历,问各种项目细节,问了挺多专业课知识,主要是金属材料和几何公差相关,最后反问。#机械制造2024笔面经# 本硕211,投的传感器结构设计,一开始是自我介绍,然后是项目经历,问项目中的难点及如何解决,专业问题很少,然后就是关于加班的看法,个。努力苦心,求内推,辛。蓝月亮,宁德时代,顺丰,得物,快手等大厂24秋招内推①蓝月亮【招聘岗位】技术,研发,lT,供应链,市场,职能等【网申链接】http://talent.bluem。

2301_79125431的博客 1660

9.23华为OD机试真题 新系统 - 小菊的寻宝之旅 (Java/Py/C/C++/Js/Go)

9.23华为OD机试真题 新系统 - 小菊的寻宝之旅 (Java/Py/C/C++/Js/Go)

算法大师! 1011

题解 | #查找两个字符串a,b中的最长公共子串#

本人211机械硕士,导师是智能制造方向,本科期间主要是冲着考研去的,没实习项目之类的东西,现在研一,主要想毕业找个好工作,说机械偏电一点的好一些,现在不知道要学。前段时间投了吉利的岗位,然后过了一段时间我接了个电话,上来对方一句,先生您最近打算购买吉利的汽车的吗,我尼玛直接气炸了,不想要我可以直说,把我电话给了营销部几个。【2023年暑期实习】依然是先电话联系,但是电话面变成了视频,对面面试官是搞暖通的,因此提问了很多专业知识,会结合你的简历提问,例如,毕业设计做得什么,空调系统。24应届,深夜发疯。

每天多一点干货 121

innovus中如何设置cts参数

上面是设置cts的一般设置,如果需要对某些skew group或者某些clock tree设置不一样的参数,如需要对clk1这个clock设置不一样的inverter,可以使用。需要查询已经设置过的ccopt参数,可以使用get_ccopt_property去查询,方法和set_ccopt_property一致。言归正传,cts的设置命令是set_ccopt_property,获取命令是get_ccopt_property。另外,set_ccopt_property提供一套命令查询方法。

芯冰乐 546

精雕软件(JDpaint) 5.5 绿色版

精雕软件(JDpaint) 5.5 绿色版精雕软件(JDpaint) 5.5 绿色版精雕软件(JDpaint) 5.5 绿色版

上一篇: java数据结构与算法刷题-----牛客,华为机试:HJ1 字符串最后一个单词的长度
下一篇: java数据结构与算法刷题-----牛客,华为机试:HJ3 明明的随机数
ydenergy_殷志鹏
博客等级 码龄7年 5887粉丝 543原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

ydenergy_殷志鹏

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值