3.26周报
周报
代码行数:
周一 | 581 |
周二 | 601 |
周三 | 615 |
周四 | 591 |
周五 | 570 |
周六 | 561 |
周日 | 577 |
遇到的问题:
项目启动很慢,要将近5分钟才能开启项目,对开发造成很大困扰。
断点打在奇怪的地方,造成启动缓慢。断点静音后项目恢复正常。
判断字符串是否包含某个字符:str.contains(“@”);
判断字符串是否完全由数字构成:org.apache.commons.lang3.StringUtils提供了丰富的字符串解析的工具包,其中isNumeric(String Str)就是提供解析是否为数字类型的方法。
StringUtils.isNumeric(str);
源代码:
public static boolean isNumeric(final CharSequence cs) {
// 判断是否为空,如果为空则返回false
if (isEmpty(cs)) {
return false;
}
// 通过 length() 方法计算cs传入进来的字符串的长度,并将字符串长度存放到sz中
final int sz = cs.length();
// 通过字符串长度循环
for (int i = 0; i < sz; i++) {
// 判断每一个字符是否为数字,如果其中有一个字符不满足,则返回false
if (!Character.isDigit(cs.charAt(i))) {
return false;
}
}
// 验证全部通过则返回true
return true;
}
字符串最后一位是不是空格
endsWith(“ ”)
算法题:
问题描述
小蓝要把一个字符串中的字母按其在字母表中的顺序排列。
例如,LANQIAO 排列后为 AAILNOQ。
又如,GOODGOODSTUDYDAYDAYUP 排列后为 AADDDDDGGOOOOPSTUUYYY。
请问对于以下字符串,排列之后字符串是什么?
WHERETHEREISAWILLTHEREISAWAY
import java.util.Arrays;
public class Main {
public static void main(String[] args) {
String arr = "WHERETHEREISAWILLTHEREISAWAY";
char arr1[] = arr.toCharArray();//将字符串转为数组
Arrays.sort(arr1);//数组排序
for(int i = 0; i < arr1.length; i++) {
System.out.print(arr1[i]);
}
}
比较Date大小
dates[i].compareTo(dates[j]) > 0
小 -1,等 0,大 1
String->Date
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
Date datr=sdf.parse(str);
题目描述
本题为填空题,只需要算出结果后,在代码中使用输出语句将所填结果输出即可。
X 星球的一处迷宫游乐场建在某个小山坡上。它是由 10×1010×10 相互连通的小房间组成的。
房间的地板上写着一个很大的字母。我们假设玩家是面朝上坡的方向站立,则:
�L 表示走到左边的房间,
�R 表示走到右边的房间,
�U 表示走到上坡方向的房间,
�D 表示走到下坡方向的房间。
X 星球的居民有点懒,不愿意费力思考。他们更喜欢玩运气类的游戏。这个游戏也是如此!
开始的时候,直升机把 100100 名玩家放入一个个小房间内。玩家一定要按照地上的字母移动。
迷宫地图如下:
UDDLUULRUL
UURLLLRRRU
RRUURLDLRD
RUDDDDUUUU
URUDLLRRUU
DURLRLDLRL
ULLURLLRDU
RDLULLRDDD
UUDDUDUDLL
ULRDLUURRR
请你计算一下,最后,有多少玩家会走出迷宫,而不是在里边兜圈子?
如果你还没明白游戏规则,可以参看下面一个简化的 4x4 迷宫的解说图:
import java.util.Scanner;
// 1:无需package
// 2: 类名必须Main, 不可修改
public class Main {
static char[][] arr;
static int[][] vis;
static int ans=0;
public static void main(String[] args) {
Scanner scan = new Scanner(System.in);
//在此输入您的代码...
arr=new char[10][10];
for(int i = 0;i<arr.length;i++) {
String s = scan.next();
arr[i] = s.toCharArray();
}
for(int i=0;i<arr.length;i++){
for(int j = 0;j<arr[0].length;j++) {
vis=new int[10][10];
dfs(i,j);
}}
System.out.println(22);
scan.close();
}
public static void dfs(int x,int y){
if(x<=-1||y>=10||y<=-1||x>=10){
ans++;
return;
}
if(vis[y][x]==1){
return;
}
vis[y][x]=1;
if(arr[y][x]=='U'){
dfs(x,y-1);
}
if(arr[y][x]=='D'){
dfs(x,y+1);
}
if(arr[y][x]=='L'){
dfs(x-1,y);
}
if(arr[y][x]=='R'){
dfs(x+1,y-1);
}
}
}
日期问题
题目描述
小明正在整理一批历史文献。这些历史文献中出现了很多日期。小明知道这些日期都在 1960 年 1 月 1 日至 2059 年 12 月 31 日。令小明头疼的是,这些日期采用的格式非常不统一,有采用年/月/日的,有采用月/日/年的,还有采用日/月/年的。
更加麻烦的是,年份也都省略了前两位,使得文献上的一个日期,存在很多可能的日期与其对应。
比如 02/03/04,可能是 2002 年 03 月 04 日、2004 年 02 月 03 日或 2004 年 03 月 02 日。
给出一个文献上的日期,你能帮助小明判断有哪些可能的日期对其对应吗?
输入输出样例
示例
输入
02/03/04
输出
2002-03-04
2004-02-03
2004-03-02
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.Scanner;
public class RiQiWenTi {
public static void main(String[] args) throws ParseException {
Scanner scan = new Scanner(System.in);
//在此输入您的代码...
String d = scan.nextLine();
String[] strs = d.split("/");
Integer[] integers = new Integer[3];
for (int i = 0; i < 3; i++) {
integers[i] = Integer.valueOf(strs[i]);
}
String[] s012 = new String[3];
Integer[] i012 = new Integer[3];
s012[0] = strs[0];
s012[1] = strs[1];
s012[2] = strs[2];
i012[0] = integers[0];
i012[1] = integers[1];
i012[2] = integers[2];
String[] s201 = new String[3];
Integer[] i201 = new Integer[3];
s201[0] = strs[2];
s201[1] = strs[0];
s201[2] = strs[1];
i201[0] = integers[2];
i201[1] = integers[0];
i201[2] = integers[1];
String[] s210 = new String[3];
Integer[] i210 = new Integer[3];
s210[0] = strs[2];
s210[1] = strs[1];
s210[2] = strs[0];
i210[0] = integers[2];
i210[1] = integers[1];
i210[2] = integers[0];
String pd1 = panduan(s012, i012);
String pd2 = panduan(s210, i210);
String pd3 = panduan(s201, i201);
String[] strings = new String[4];
strings[0] = pd1;
strings[1] = pd2;
strings[2] = pd3;
Date[] dates = new Date[4];
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
if (pd1 != null) {
dates[0] = sdf.parse(pd1);
}
if (pd2 != null) {
dates[1] = sdf.parse(pd2);
}
if (pd3 != null) {
dates[2] = sdf.parse(pd3);
}
for (int i = 0; i < 3; i++) {
for (int j = i + 1; j < 3; j++) {
if (dates[i] == null || dates[j] == null) {
} else {
if (dates[i].compareTo(dates[j]) > 0) {
dates[3] = dates[i];
dates[i] = dates[j];
dates[j] = dates[3];
strings[3] = strings[i];
strings[i] = strings[j];
strings[j] = strings[3];
}else if (dates[i].compareTo(dates[j])==0){
strings[j]=null;
}
}
}
}
if (strings[0] != null) {
System.out.println(strings[0]);
}
if (strings[1] != null) {
System.out.println(strings[1]);
}
if (strings[2] != null) {
System.out.println(strings[2]);
}
scan.close();
}
public static String panduan(String[] strings, Integer[] integers) {
int[] max_days = {0, 31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31};
int[] Rmax_days = {0, 31, 29, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31};
if (integers[0] % 4 == 0) {
if (integers[1] <= 12 && integers[1] > 0 && integers[2] > 0 && integers[2] <= Rmax_days[integers[1]]) {
if (integers[0] < 60) {
return ("20" + strings[0] + "-" + strings[1] + "-" + strings[2]);
} else {
return ("19" + strings[0] + "-" + strings[1] + "-" + strings[2]);
}
}
} else {
if (integers[1] <= 12 && integers[1] > 0 && integers[2] > 0 && integers[2] <= max_days[integers[1]]) {
if (integers[0] < 60) {
return ("20" + strings[0] + "-" + strings[1] + "-" + strings[2]);
} else {
return ("19" + strings[0] + "-" + strings[1] + "-" + strings[2]);
}
}
}
return null;
}
}
相关文章:
3.26周报
周报 代码行数: 周一 581 周二 601 周三 615 周四 591 周五 570 周六 561 周日 577 遇到的问题: 项目启动很慢,要将近5分钟才能开启项目,对开发造成很大困扰。 断点打在奇怪的地方,造成启动缓慢。断点…...
从0开始学python -69
Python math 模块 Python math 模块提供了许多对浮点数的数学运算函数。 math 模块下的函数,返回值均为浮点数,除非另有明确说明。 如果你需要计算复数,请使用 cmath 模块中的同名函数。 要使用 math 函数必须先导入: import…...
HashMap中HashCode的实现原理
代码 static final int hash(Object key) {int h;return (key null) ? 0 : (h key.hashCode()) ^ (h >>> 16);}1. h >>> 16 是什么,有什么用? h是hashcode。h >>> 16是用来取出h的高16,(>>>是无符号右移) 如下展…...

Redis —Set、ZSet介绍和应用场景
Set 概念 Redis的set是一个不重复、无序并唯一的键值集合。(方便管理无序集合)它支持交集、并集、差集等等 set和list区别 List 可以存储重复元素,Set 只能存储非重复元素;List 是按照元素的先后顺序存储元素的,而…...

【产品人卫朋】内容运营:文章点击量少的可怜,该怎么做?
今天来谈谈内容运营这个话题。 随着自媒体进入视播时代,也就是短视频的时代。 无论你打开任何一个短视频应用,每一个主题下面都会有成千上万个视频。 最为致命的是,大家停留的时间也越来越短了。 如果你不能在2秒的时间内吸引眼球,…...

【K8S系列】深入解析无状态服务
目录 序言 1. 无服务介绍 1.1 优点 1.2 使用场景 1.3 资源类型 1.4 总结 2 使用介绍 2.1 Deployment 使用场景: 2.2 ReplicaSet 使用场景 2.3 pod Pod 资源定义示例 2.4 service 创建一个Deployment: 创建一个Service: 总结…...
Node基础--命令窗口
1.Windows命令行窗口(叫做:小黑屏、cmd窗口、终端、shell) (1).如何打开命令行窗口 开始菜单 -- 运行 --- cmd --- enter win R -- cmd --- enter (2).cmd窗口常用指令 dir 列出当前目录下的所有文件 cd 目录名 进入到指定的目录 md 目录名 …...
一些有趣的项目
一个支持交互的展示卷积过程的可视化工具 https://github.com/pwwang/cnn-convoluter 一款简单易用基于 Python scikit 的推荐系统https://github.com/NicolasHug/Surprise 一个封装了 7 种启发式算法的 Python 代码库。分别是:差分进化算法、遗传算法、粒子群算法…...

教你精通JavaSE语法之第六章、数组的使用
一、数组的定义与使用 😁1.1数组的概念📌数组:可以看成是相同类型元素的一个集合。在内存中是一段连续的空间,可以同来存储同种数据类型的多个值。但是数组容器在存储数据的时候,需要结合隐式转换考虑。比如࿱…...

基于51单片机AT89C51的小型音乐喷泉控制系统设计
wx供重浩:创享日记 对话框发送:单片机小喷泉 获取完整无水印论文报告(内含电路原理图和程序) 根据目前音乐喷泉的发展现状,介绍了一个以AT89C51单片机为核心的小型音乐喷泉控制系统。给出了一个简洁的单片机控制电路&a…...

【Nacos】Nacos原理详解(注册中心,配置中心)
文章目录一、背景二、CAP理论三、什么是NacosNacos 服务注册需要具备的能力:Nacos的实现原理:四、Nacos原理Nacos 服务注册与订阅的完整流程服务领域模型五、注册中心原理六、配置中心原理七、Nacos 的关键特性包括:八、 面试分析一、背景 服务注册中心…...

蓝桥杯刷题冲刺 | 倒计时11天
作者:指针不指南吗 专栏:蓝桥杯倒计时冲刺 🐾马上就要蓝桥杯了,最后的这几天尤为重要,不可懈怠哦🐾 文章目录1.质因子2.蓝桥王国1.质因子 题目 链接: 1545. 质因子 - AcWing题库 给定一个整数 N…...

【新】(2023Q2模拟题JAVA)华为OD机试 - 时间格式化
最近更新的博客 华为od 2023 | 什么是华为od,od 薪资待遇,od机试题清单华为OD机试真题大全,用 Python 解华为机试题 | 机试宝典【华为OD机试】全流程解析+经验分享,题型分享,防作弊指南华为od机试,独家整理 已参加机试人员的实战技巧本篇题解:时间格式化 题目 运维工程师…...

MySQL函数
函数 MySQL函数与其存储过程类似,是一系列完成某种功能的SQL语句。函数一旦定义后,与过程一样是存储在MySQL的服务器上。调用函数就是一次性执行这些语句。所以函数可以降低语句重复。 MySQL本身提供了内置函数,这些函数的存在给我们日常的开…...

【Linux系统】开发工具(下) {调试器gdb,自动化构建工具make/Makefile,多文件编译,代码管理平台git}
【Linux系统】开发工具(上) {软件包管理器yum,更新yum源,文本编辑器vim,vim的三种基本模式,vim指令集,代码编译器gcc/g} 四、Linux调试器:gdb 4.1 debug模式 程序的编译模式有两种,debug模式和…...
线性代数——行列式
文章目录版权声明排列行列式行列式的由来行列式的概念行列式的性质重要公式克拉默法则补充知识版权声明 本文大部分内容皆来自李永乐老师考研教材和视频课。 排列 由1,2,…,n1,2,\ldots,n1,2,…,n组成的有序数组称为一个nnn阶排列,通常使用j1j2…jnj_1j_2\ldots …...

Spring注解-Spring-boot-SpingAOP
Spring各个模块 Test 对应spring-test.jar. Spring提供的测试工具, 可以整合JUnit测试, 简化测试环节. Core Container Spring的核心组件, 包含了Spring框架最基本的支撑. Beans, 对应spring-beans.jar. Spring进行对象管理时依赖的jar包. Core, 对应spring-core.jar,…...

使用Shell传参解决DataPhin中PySpark不支持中文的问题
使用Shell传参解决DataPhin中PySpark不支持中文的问题 背景 笔者开发PySpark任务时【别问为神马不用Java和Scala打Jar包的方式,PySpark不需要打包所以开发效率极高,早点搞完早点下班】,遇到一个令所有SQL Boy都很头疼的问题,那就…...

【CDH】cloudera manger 如何开启Debug 日志调试模式
前言 在安装 Cloudera Manger 时,遇到报错,需要开启Debug 日志级别来排查下问题原因。这里记录下 CM 如何开启 Debug 级别。 方法一:为整个服务启动DEBUG 如果 CM 无法启动,则可以为整个服务器启用 DEBUG 或 TRACE。 警告&…...
SQL Server 用户授权与回收
创建xxbbbb账号,账号可以在Company_report20221019.dbo.qfacccmprf表中进行select、 insert,update,delete --创建登录账号 create login xxbbbb with password12345#---创建用户 use Company_report20221019 create user xxbbbb for login xxbbbb---将qfacccmprf表…...

大数据零基础学习day1之环境准备和大数据初步理解
学习大数据会使用到多台Linux服务器。 一、环境准备 1、VMware 基于VMware构建Linux虚拟机 是大数据从业者或者IT从业者的必备技能之一也是成本低廉的方案 所以VMware虚拟机方案是必须要学习的。 (1)设置网关 打开VMware虚拟机,点击编辑…...

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

基于Docker Compose部署Java微服务项目
一. 创建根项目 根项目(父项目)主要用于依赖管理 一些需要注意的点: 打包方式需要为 pom<modules>里需要注册子模块不要引入maven的打包插件,否则打包时会出问题 <?xml version"1.0" encoding"UTF-8…...
汇编常见指令
汇编常见指令 一、数据传送指令 指令功能示例说明MOV数据传送MOV EAX, 10将立即数 10 送入 EAXMOV [EBX], EAX将 EAX 值存入 EBX 指向的内存LEA加载有效地址LEA EAX, [EBX4]将 EBX4 的地址存入 EAX(不访问内存)XCHG交换数据XCHG EAX, EBX交换 EAX 和 EB…...
Xen Server服务器释放磁盘空间
disk.sh #!/bin/bashcd /run/sr-mount/e54f0646-ae11-0457-b64f-eba4673b824c # 全部虚拟机物理磁盘文件存储 a$(ls -l | awk {print $NF} | cut -d. -f1) # 使用中的虚拟机物理磁盘文件 b$(xe vm-disk-list --multiple | grep uuid | awk {print $NF})printf "%s\n"…...
iOS性能调优实战:借助克魔(KeyMob)与常用工具深度洞察App瓶颈
在日常iOS开发过程中,性能问题往往是最令人头疼的一类Bug。尤其是在App上线前的压测阶段或是处理用户反馈的高发期,开发者往往需要面对卡顿、崩溃、能耗异常、日志混乱等一系列问题。这些问题表面上看似偶发,但背后往往隐藏着系统资源调度不当…...

手机平板能效生态设计指令EU 2023/1670标准解读
手机平板能效生态设计指令EU 2023/1670标准解读 以下是针对欧盟《手机和平板电脑生态设计法规》(EU) 2023/1670 的核心解读,综合法规核心要求、最新修正及企业合规要点: 一、法规背景与目标 生效与强制时间 发布于2023年8月31日(OJ公报&…...
Java 与 MySQL 性能优化:MySQL 慢 SQL 诊断与分析方法详解
文章目录 一、开启慢查询日志,定位耗时SQL1.1 查看慢查询日志是否开启1.2 临时开启慢查询日志1.3 永久开启慢查询日志1.4 分析慢查询日志 二、使用EXPLAIN分析SQL执行计划2.1 EXPLAIN的基本使用2.2 EXPLAIN分析案例2.3 根据EXPLAIN结果优化SQL 三、使用SHOW PROFILE…...

CSS3相关知识点
CSS3相关知识点 CSS3私有前缀私有前缀私有前缀存在的意义常见浏览器的私有前缀 CSS3基本语法CSS3 新增长度单位CSS3 新增颜色设置方式CSS3 新增选择器CSS3 新增盒模型相关属性box-sizing 怪异盒模型resize调整盒子大小box-shadow 盒子阴影opacity 不透明度 CSS3 新增背景属性ba…...
嵌入式面试常问问题
以下内容面向嵌入式/系统方向的初学者与面试备考者,全面梳理了以下几大板块,并在每个板块末尾列出常见的面试问答思路,帮助你既能夯实基础,又能应对面试挑战。 一、TCP/IP 协议 1.1 TCP/IP 五层模型概述 链路层(Link Layer) 包括网卡驱动、以太网、Wi‑Fi、PPP 等。负责…...