【每日一练】20231023
统计每个字符出现的次数相关问题
方法一:map的put方法+遍历
public class Test {public static void main(String[] args) {StringBuilder sb = new StringBuilder("");Random ran = new Random();for(int i=0;i<2000000;i++) {sb.append((char) ('a' + ran.nextInt(27)));}String str = sb.toString();//System.out.println(sb);//统计一下每个字符出现的次数?出现最多?Map<Character, Integer> map = new HashMap<>();long s = System.currentTimeMillis();for (int i = 0; i < str.length(); i++) {Character ch = str.charAt(i);if (Objects.isNull(map.get(ch))) {map.put(ch, 1);} else {map.put(ch, map.get(ch) + 1);}}long e = System.currentTimeMillis();System.out.println((e-s)+"ms");// System.out.println(map);}
}
方法二:用数组
public class Test2 {public static void main(String[] args) {StringBuilder sb = new StringBuilder(""); //a-zRandom ran = new Random();for(int i=0;i<2000000;i++) {sb.append((char) ('a' + ran.nextInt(26)));}String str = sb.toString();
// System.out.println(str);int[] chs =new int[26]; //chs[0] chs[25] 0-a, 25-zlong s = System.currentTimeMillis();for(int i =0; i<str.length();i++){char c = str.charAt(i); //if c is achs[c-'a']+=1;}long e = System.currentTimeMillis();System.out.println((e-s)+"ms");
//
// for(int i=0;i<chs.length;i++){
// System.out.print((char)(i+'a')+",");
// System.out.println(chs[i]);
// }}
}
方法三:map的getOrDefault方法
public class Test3 {public static void main(String[] args) {String str = "The so-called 'multifunctional' is not adding many elements, " +"but subtracting them. Only by leaving blank can ten thousand possibilities be created.";// 创建HashMap用于存储字母和出现次数Map<Character, Integer> countMap = new HashMap<>();// 遍历字符串的每个字符for (char c : str.toCharArray()) {// 判断是否为字母if (Character.isLetter(c)) {// 将字母转为小写形式char lowercase = Character.toLowerCase(c);// 更新字母的出现次数,使用Map的getOrDefault方法来获取该字母已有的计数并加一countMap.put(lowercase, countMap.getOrDefault(lowercase, 0) + 1);}}// 遍历Map输出每个字母及其出现次数for (char c : countMap.keySet()) {int count = countMap.get(c);System.out.println(c + ": " + count);}}}
相关文章:
【每日一练】20231023
统计每个字符出现的次数相关问题 方法一:map的put方法遍历 public class Test {public static void main(String[] args) {StringBuilder sb new StringBuilder("");Random ran new Random();for(int i0;i<2000000;i) {sb.append((char) (a ran.n…...
【项目经理】工作流引擎
项目经理之 工作流引擎 一、业务系统管理目的维护信息 二、组织架构管理目的维护信息 三、角色矩阵管理目的维护信息 四、条件变量管理目的维护信息 五、流程模型管理目的维护信息 六、流程版本管理目的维护信息 七、流程监管控制目的维护信息 系列文章版本记录 一、业务系统管…...
025-第三代软件开发-实现需求长时间未操作返回登录界面
第三代软件开发-实现需求长时间未操作返回登录界面 文章目录 第三代软件开发-实现需求长时间未操作返回登录界面项目介绍实现需求长时间未操作返回登录界面实现思路用户操作监控QML 逻辑处理 关键字: Qt、 Qml、 QTimer、 timeout、 eventFilter 项目介绍 欢迎…...
驱动开发LED灯绑定设备文件
头文件 #ifndef __HEAD_H__ #define __HEAD_H__typedef struct {unsigned int MODER;unsigned int OTYPER;unsigned int OSPEEDR;unsigned int PUPDR;unsigned int IDR;unsigned int ODR; }gpio_t;#define PHY_LED1_ADDR 0x50006000 #define PHY_LED2_ADDR 0x50007000 #defin…...
MySql 数据库基础概念,基本简单操作及数据类型介绍
文章目录 数据库基础为什么需要数据库?创建数据库mysql架构SQL语句分类编码集修改数据库属性数据库备份 表的基本操作存在时更新,不存在时插入 数据类型日期类型enum和set 数据库基础 以特定的格式保存文件,叫做数据库,这是狭义上…...
异步加载 JavaScript
目录 编辑 前言:异步加载 JavaScript 的重要性 详解:异步加载 JavaScript 的方法 使用 使用动态创建标签: 使用模块引入(ES6模块): 解析:异步加载 JavaScript 的重要性和优势 实践和注…...
汽车屏类产品(四):仪表Cluster
###前言 仪表Cluster/仪表盘Dashboard,作为伴随汽车诞生就存在的一个主要零部件之一,从机械到电子到数字,可以说也是逐渐发展到现在的。 目前的主流框图如下,中间processor就是主控芯片,可能有buttons/switches,有display显示屏+backlight背光,有audio->speake…...
【GA-ELM】基于遗传算法优化极限学习机回归预测研究(Matlab代码实现)
💥💥💞💞欢迎来到本博客❤️❤️💥💥 🏆博主优势:🌞🌞🌞博客内容尽量做到思维缜密,逻辑清晰,为了方便读者。 ⛳️座右铭&a…...
DFT和ATE岗位前景薪资对比,手把手教你如何选择岗位?
ATE测试和DFT可测性设计,虽然二者都对芯片测试至关重要,但是两个岗位的区别还是很大的。 两个岗位应该如何做选择? 先讲产业环节 我们知道芯片设计、芯片制造、芯片封测每个环节都是大工程,且每个环节都关键且重要。测试是芯片诞…...
驱动day4作业
通过字符设备驱动的分步实现编写LED驱动,另外实现特备文件和设备的绑定 head.h #ifndef __HEAD_H__ #define __HEAD_H__ typedef struct{unsigned int MODER;unsigned int OTYPER;unsigned int OSPEEDR;unsigned int PUPDR;unsigned int IDR;unsigned int ODR; }…...
【Oracle】VC6.0使用 odbc 访问 Oracle 存储过程
环境说明 系统环境 系统:Windows XP IDE: Microsoft Visual C 6.0 使用的对象 msado15.tlh _ConnectionPtr m_pConnection; HRESULT hr m_pConnection.CreateInstance(“ADODB.Connection”); _RecordsetPtr m_pRecordset; m_pRecordset.CreateInstan…...
QWidget快速美化-圆形蓝色单选框
将代码复制进QRadioButton的样式表 效果: 代码: QRadioButton{font:75 9pt "Arial";background:transparent;color:white;border:none; }QRadioButton:disabled{color:gray; }QRadioButton::indicator{width:12px;height:12px;border-radius:8px; }QRadioButton::i…...
adb 获取当前界面元素
adb配置正确,直接看6,pull的位置是你执行pull的目录下。 --------------------------------------------------------------------------------------------------------------------------------- 使用adb命令获取当前应用的元素需要先连接到手机或模…...
SpringSecurity源码学习四:会话管理
目录 1. 什么是会话管理2. springSecurity中的session管理怎么做的3. springSecurity源码中的session管理4. 代码示例5. 源码5.1 不同策略的含义 6. 集群模式session管理7. 总结 1. 什么是会话管理 会话管理是指在Java应用程序中管理用户会话状态的过程。在Spring框架中&#…...
Kotlin笔记(七):协程
1. 协程的定义 协程属于Kotlin中非常有特色的一项技术,因为大部分编程语言中是没有协程这个概念的。 什么是协程呢?它其实和线程是有点类似的,可以简单地将它理解成一种轻量级的线程。要知道,线程是非常重量级的,它需要…...
存储优化知识复习二详细版解析
存储优化 知识复习二 一、 选择题 1、 对数据库调优的方法中,最困难但是最有成效的是( )。 A、优化表的架构设计 B、添加内存 C、索引优化 D、查询语句优化 【参考答案】A2、 防止与处理死锁的方法有( )。 A、尽量避免或尽快处理阻塞 B、访…...
《持续交付:发布可靠软件的系统方法》- 读书笔记(七)
持续交付:发布可靠软件的系统方法(七) 第 7 章 提交阶段7.1 引言7.2 提交阶段的原则和实践7.2.1 提供快速有用的反馈7.2.2 何时令提交阶段失败7.2.3 精心对待提交阶段7.2.4 让开发人员也拥有所有权7.2.5 在超大项目团队中指定一个构建负责人 …...
Go源码实现使用多线程并发下载大文件的功能
摘要:Go语言编码实现了使用多线程并发下载文件的功能。 1. 代码流程介绍 1. 获取系统的CPU核心数量,并将其作为线程数的参考值,并打印出来。 2. 定义要下载的文件的URL、线程数和输出文件名。 3. 使用getFileSize()函数获取文件大小…...
Python基础入门例程1-NP1 Hello World!
描述 将字符串 Hello World! 存储到变量str中,再使用print语句将其打印出来。 输入描述: 无 输出描述: 一行输出字符串Hello World! 解答: str "Hello World!" print(str) 解释说明: 赋值变量&…...
前端面试题10.23
解决的最复杂的前端问题,介绍一下 最复杂的前端问题之一是浏览器兼容性,不同浏览器对网页的渲染方式存在差异,需要针对不同浏览器做兼容性处理。此外,前端性能优化也是一个复杂的问题,需要综合考虑网页加载速度、渲染…...
G-Helper技术深度解析:华硕硬件控制架构揭秘与性能优化实践
G-Helper技术深度解析:华硕硬件控制架构揭秘与性能优化实践 【免费下载链接】g-helper Lightweight, open-source control tool for ASUS laptops and ROG Ally. Manage performance modes, fans, GPU, battery, and RGB lighting across Zephyrus, Flow, TUF, Stri…...
大模型落地总卡在“最后一公里”?SITS2026揭示5级成熟度断层,92%企业尚处L2以下(附自测清单)
第一章:SITS2026发布:大模型工程化成熟度模型 2026奇点智能技术大会(https://ml-summit.org) SITS2026(Software Intelligence & Trustworthiness Standard 2026)正式发布首个面向大模型全生命周期的工程化成熟度模型&#…...
暗黑3智能战斗伴侣:D3KeyHelper重新定义高效刷图体验
暗黑3智能战斗伴侣:D3KeyHelper重新定义高效刷图体验 【免费下载链接】D3keyHelper D3KeyHelper是一个有图形界面,可自定义配置的暗黑3鼠标宏工具。 项目地址: https://gitcode.com/gh_mirrors/d3/D3keyHelper 当你沉浸在暗黑破坏神3的秘境战斗中…...
【紧急预警】AI原生应用上线前必做通信压测:单连接承载>50路token流+多Agent状态同步时,这3类协议已证实失效
第一章:AI原生软件研发实时通信技术选型 2026奇点智能技术大会(https://ml-summit.org) AI原生软件对低延迟、高吞吐、语义感知的实时通信能力提出全新要求——模型推理流式响应、多模态协同状态同步、边缘-云协同训练反馈闭环等场景,已远超传统Web应用…...
Unity 物联网通信实战:从零集成 MQTTnet 到发布订阅
1. 为什么选择MQTTnet做Unity物联网通信 如果你正在开发一个需要实时数据交互的Unity应用,比如智慧城市大屏或者设备监控面板,MQTT协议绝对是你的首选。而MQTTnet作为.NET平台最成熟的MQTT客户端库,在Unity中的表现尤为出色。我去年做过一个工…...
终极英雄联盟智能助手:5分钟快速提升你的游戏体验 [特殊字符]
终极英雄联盟智能助手:5分钟快速提升你的游戏体验 🎮 【免费下载链接】League-Toolkit An all-in-one toolkit for LeagueClient. Gathering power 🚀. 项目地址: https://gitcode.com/gh_mirrors/le/League-Toolkit 想要在英雄联盟中…...
国内贸易商选工商业储能代工厂需要关注哪些核心细节?
近两年工商业储能的海内外需求持续攀升,不少贸易商在筛选合作工厂时,经常遇到证货不符、交付延期、性能不达标等问题,本文从工艺、合规、成本三个维度拆解核心考察标准。一、合规认证的核验标准核心认证清单:内销产品需具备 GB/T …...
终极指南:如何使用中兴光猫配置解密工具完全掌控家庭网络
终极指南:如何使用中兴光猫配置解密工具完全掌控家庭网络 【免费下载链接】ZET-Optical-Network-Terminal-Decoder 项目地址: https://gitcode.com/gh_mirrors/ze/ZET-Optical-Network-Terminal-Decoder 你是否曾因无法访问光猫的完整配置而感到困扰&#x…...
从理论到实践:忆阻神经网络中的突触与神经元电路设计探析
1. 忆阻神经网络基础:从生物启发到硬件实现 记得第一次接触忆阻神经网络时,我被它巧妙模拟生物神经系统的方式震撼到了。这种将生物神经元特性用电子元件实现的技术,正在重新定义人工智能硬件的可能性。忆阻器作为核心元件,其独特…...
别再只盯着MFCC了!用Librosa实战提取LFCC和CQCC,解锁音频特征新姿势
解锁音频特征新维度:LFCC与CQCC在Librosa中的实战指南 音频特征提取是语音识别、音乐信息检索等领域的核心技术。传统MFCC(梅尔频率倒谱系数)虽广泛应用,但在某些场景下表现有限。本文将深入探讨两种替代方案——LFCC(…...
