Day1--每日一练

  • 🍁 个人主页:爱编程的Tom
  • 💫 本篇博文收录专栏:每日一练-算法篇
  • 👉 目前其它专栏:c系列小游戏     c语言系列--万物的开始_  Java专栏等              
  • 🎉 欢迎 👍点赞✍评论⭐收藏💖三连支持一下博主🤞
  • 🧨现在的沉淀就是对未来的铺垫🎨 

目录

         前言 

                题目一 

                题目二 

                题目三 



前言 

每天练习三道题,今日题目:统计数字2出现次数、寻找公共元素、点击消除问题。 

题目一 

统计区间内某个数字出现的次数

例如在区间[2.22]的范围之中,统计数字2出现的次数(应为6次)。

本题要求在某一区间内,统计2出现的次数。

  • 第一次尝试解题:
public static void main(String[] args) {Scanner scanner = new Scanner(System.in);int start = scanner.nextInt();int end  = scanner.nextInt();Set<Integer> set = new HashSet<>();for (int i = start; i < end; i++) {if (i == 2 || String.valueOf(i).contains("2")) {set.add(i); }}System.out.println(set.size());}

通过提交发现,只通过了10%的测试用例,经过检查发现该代码只统计了出现2以及包含2的数字的次数,并没有解决问题。

更新思路使用除10取余,除10取整的方法,计算统计每个数字中2出现的次数,最后在累加得到最终值,使问题得到了解决,最终通过全部的测试用例 。

  • 更新后的代码:
public static void main(String[] args) {Scanner scanner = new Scanner(System.in);int start = scanner.nextInt();int end = scanner.nextInt();int count  = 0;for(int i = start; i <= end; i++) {count += countNum(i);}System.out.println(count);}public static int countNum(int num) {int count = 0;while (num > 0) {if (num % 10 == 2) {count++;}num /= 10;}return count;}

题目二 

计算两个数组之间的公共元素,例如数组1中 {1,2,3,4}, 数组2中{2,3,5,6},所对应的公共元素就是{2,3}。由此可得:

解题思想使用HashSet解决问题,看数组2是否包含数组1的内容,包含则输出并返回

并且通过全部的测试用例  

  • 解决代码
public ArrayList<Integer> intersection(ArrayList<Integer> nums1, ArrayList<Integer> nums2) {// write code hereHashSet<Integer> set1 = new HashSet<>(nums1);HashSet<Integer> set2 = new HashSet<>(nums2);ArrayList<Integer> result = new ArrayList<>();for (Integer num : set1) {if (set2.contains(num)) {result.add(num);}}return result;}

题目三 

经典的牛牛点击消除问题 :相邻的两个小写字母可以相互抵消,其它情况均不可以。

例如输入abbc,输出ac;输入absddsc,输出abc.

由上述可知,可以利用栈的特性来进行解决:先进后出 

思路:我们将其数据放入一个栈中,后入栈的与栈中数据对比,栈空入栈,相等出栈,不等入栈,最后输出栈中元素,逆序打印(因为先进后出的原因,出栈的数据是反的,需要逆序打印)

最终通过全部的测试用例 

解决代码: 

public static void main3(String[] args) {Stack<Character> stack = new Stack<>();Scanner sc = new Scanner(System.in);String str = sc.nextLine();for (int i = 0; i < str.length(); i++) {if (stack.empty()) {stack.push(str.charAt(i));} else if (str.charAt(i) == stack.peek()) {stack.pop();}else {stack.push(str.charAt(i));}}if (stack.empty()) {System.out.println(0);}String s = "";while (!stack.empty()) {s = s + stack.pop();}for (int i = s.length()-1; i >= 0 ; i--) {System.out.print(s.charAt(i));}}

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/bicheng/43115.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

向量动态量化

背景介绍 量化&#xff08;Quantization&#xff09;是向量检索技术中一种常用的优化方法&#xff0c;通过一定程度的精度&#xff08;召回率&#xff09;损失&#xff0c;来换取性能的大幅度提升&#xff0c;以及内存占用&#xff08;索引文件大小&#xff09;大幅度降低。 …

一个parquet-go例子

一个parquet-go例子 使用go读写parquet&#xff0c;使用到了框架github.com/xitongsys/parquet-go 代码: package mainimport ("log""time""github.com/xitongsys/parquet-go-source/local""github.com/xitongsys/parquet-go/parquet&qu…

Echarts 实现数据可视化

Echarts 简介 Echarts 是一个开源的、免费的、成熟的、商业级图表可视化框架&#xff0c;是 Apache 开源社区的顶级项目之一&#xff0c;也是国内使用最多和最为广泛的可视化图表框架之一。 数据可视化图表框架并没有一个统一的行业标准&#xff0c;比较常见的有 D3、Highchart…

C语言7 控制语句

目录 1. 条件语句 if 语句 if-else 语句 if-else if-else 语句 switch 语句 2. 循环语句 for 循环 while 循环 do-while 循环 3. 跳转语句 break 语句 continue 语句 return 语句 goto 语句 1. 条件语句 if 语句 if语句根据给定条件的真或假来决定是否执行某段…

mysql之导入测试数据

运维时经常要这样&#xff1a;mysql改表名&#xff0c;创建一个一样的表不含数据&#xff0c;复制旧表几条数据进去 改变表的名字&#xff1a; RENAME TABLE old_table_name TO new_table_name; 这将把原来的表old_table_name重命名为new_table_name。 创建一个一样的表结构…

学诚教育在线管理系统-计算机毕业设计源码98076

目 录 摘要 1 绪论 1.1 选题背景与意义 1.2开发现状 1.3论文结构与章节安排 2 开发环境及相关技术介绍 2.1 MySQL数据库 2.2 Tomcat服务器 2.3 Java语言 2.4 Spring Cloud框架介绍 3 教育在线管理系统系统分析 3.1 可行性分析 3.1.1 技术可行性分析 3.1.2 经济可…

【操作系统】进程管理——进程的同步与互斥(个人笔记)

学习日期&#xff1a;2024.7.8 内容摘要&#xff1a;进程同步/互斥的概念和意义&#xff0c;基于软/硬件的实现方法 进程同步与互斥的概念和意义 为什么要有进程同步机制&#xff1f; 回顾&#xff1a;在《进程管理》第一章中&#xff0c;我们学习了进程具有异步性的特征&am…

redis的Bitmap 、HyperLogLog、Geo相关命令和相关场景

Bitmap 相关命令&#xff1a; #SETBIT - 设置指定位置的比特值。SETBIT key offset value # 将 key 对应的 bitmap 中第 offset 位设置为 value&#xff08;0 或 1&#xff09;。#GETBIT - 获取指定位置的比特值。GETBIT key offset # 返回 key 对应 bitmap 的第 offset 位的…

Bert入门-使用BERT(transformers库)对推特灾难文本二分类

Kaggle入门竞赛-对推特灾难文本二分类 这个是二月份学习的&#xff0c;最近整理资料所以上传到博客备份一下 数据在这里&#xff1a;https://www.kaggle.com/competitions/nlp-getting-started/data github&#xff08;jupyter notebook&#xff09;&#xff1a;https://gith…

多GPU训练大模型,是否使用RDMA?

随着大模型越来越火&#xff0c;多GPU同时训练也逐渐流行起来。这其中就不得不提到一项Remote Direct Memory Access&#xff08;RDMA&#xff0c;远程直接内存访问&#xff09;技术。它可以显著提高数据传输效率&#xff0c;减少延迟&#xff0c;特别是在跨节点多GPU的分布式训…

Go bytes包

bytes包 Go 语言中的 bytes 包提供了用于操作字节切片的函数集合。字节切片是 Go 语言中非常常用的数据类型&#xff0c;用于表示二进制数据或 UTF-8 编码的字符串。 bytes 包主要功能 操作和处理字节切片搜索和比较字节切片修改和分割字节切片读取和写入字节切片 使用场景 字…

4.Python4:requests

1.requests爬虫原理 &#xff08;1&#xff09;requests是一个python的第三方库&#xff0c;主要用于发送http请求 2.正则表达式 #正则表达式 import re,requests str1aceace #A(.*?)B,匹配A和B之间的值 print(re.findall(a(.*?)e,str1))import re,requests str2hello com…

基于Java+SpringMvc+Vue技术的实验室管理系统设计与实现(6000字以上论文参考)

博主介绍&#xff1a;硕士研究生&#xff0c;专注于信息化技术领域开发与管理&#xff0c;会使用java、标准c/c等开发语言&#xff0c;以及毕业项目实战✌ 从事基于java BS架构、CS架构、c/c 编程工作近16年&#xff0c;拥有近12年的管理工作经验&#xff0c;拥有较丰富的技术架…

昇腾环境下使用docker部署mindie-service

MindIE是基于昇腾硬件的运行加速、调试调优、快速迁移部署的高性能深度学习推理框架。它包含了MindIE-Service、MindIE-Torch和MindIE-RT等组件。我主要用MindIE-Service的功能&#xff0c;这个组件对标的是vllm这样的大语言推理框架。 启动docker容器 先拉取镜像&#xff08…

VisualVM里面的Threads线程界面各种状态对应的Java代码

写一个示例代码&#xff0c;把几种常见的情况都开一个线程运行 package cn.oopeak.juc.juc1;import cn.hutool.core.thread.ThreadUtil;import java.util.concurrent.TimeUnit; import java.util.concurrent.locks.LockSupport; import java.util.concurrent.locks.ReentrantL…

Swagger的原理及应用详解(六)

本系列文章简介: 在当今快速发展的软件开发领域,特别是随着微服务架构和前后端分离开发模式的普及,API(Application Programming Interface,应用程序编程接口)的设计与管理变得愈发重要。一个清晰、准确且易于理解的API文档不仅能够提升开发效率,还能促进前后端开发者之…

大模型时代的蓝海任务,GPT4V准确率不足10%,港科大发布指代理解基准RefCOCO

谈到多模态大模型的应用场景&#xff0c;除了生成任务以外&#xff0c;应用最广泛的可能就是在图像和视频中进行目标检测。 目标检测要求从图像中识别并标注出所有感兴趣的对象&#xff0c;并给每个对象分配一个类别标签。典型的目标检测方法会生成边界框&#xff0c;标记出图…

【js面试题】js的数据结构

面试题&#xff1a;说说你了解的js数据结构 JavaScript中的数据结构是编程的基础&#xff0c;它们帮助我们以高效的方式存储和操作数据。 下面将详细介绍 这些数据结构的来源、概念和应用场景。 数组 Array 来源&#xff1a; 数组是一种线性数据结构&#xff0c;起源于计算…

青岛外贸建站公司wordpress网站模板

电子数码wordpress网站模板 电子数码wordpress网站模板&#xff0c;做数码电子的生产厂家或外贸公司官方网站模板。 https://www.jianzhanpress.com/?p3161 金属不锈钢wordpress外贸主题 适合从事金属不锈钢生产、加式或做外贸的公司&#xff0c;简洁wordpress外贸主题模板…

Mojo入门案例教程(上手篇)

以下是 Mojo 编程语言入门案例教程&#xff0c;内容包括 Mojo 的基本概念、变量、控制结构、函数等方面&#xff1a; Mojo 的基本概念 1.什么是 Mojo&#xff1f;&#xff1a;Mojo 是一种函数式编程语言&#xff0c;用于开发小型应用程序、脚本和工具。 2.Mojo 的特点&#x…