自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(70)
  • 资源 (1)
  • 收藏
  • 关注

原创 【部门排序】

公司hr想要分析各个研究所所在城市的主力业务分布。给定一批部门信息记录于数组departments,departments[i]格式为city departmentName personNum,分别带别该部门所在城市、部门名称、人数1、先从每个城市选取人数多最多的5个部门作为分析对象,当人数相等时优先取departmentName字典序小的注:不足5个部门的城市,按实际个数选取2、然后对于选取的结果,按格式city departmentName逐行输出。首先按city字典升序输出;

2024-08-09 14:45:21 183

原创 最大口罩产量

已知莫工厂未来一段时间,每天口罩的生产产能一次记录于数组productions,每天的生产计划依次记录于数组plans,plans[i]值为1表示生产,值为0表示休息由于疫情影响,口罩需求增加,即:在这window天中原计划休息的,开工生产在这window天之外的,生产计划不变请制定合适的港公方案,使得这段时间的总产量最大,并返回该最大值。

2024-05-31 14:48:23 623

原创 最小产品价格差值

给定某产品多少天的价格,记录于prices中,请找出任意两天之间的最小价格差(即abs(prices[i] - prices[j]))的最小值,i!=j)并计算最小介个差组合的个数。

2024-05-25 16:21:50 607

原创 退格(删除)键

用来表示退格键,遇到就删除上一位字符(如果有)在键盘上从左到右一次输入一串字符串,请输出最终字符的个数。注:退格键不会出现在最终的剩余字符中。

2024-05-25 16:19:05 266

原创 删除指定目录

我们定义一种目录结构字符串(类似Windows的 tree /f 的输出内容),用它来表达目录树的结构,如图所示:目录结构字符串的输入仅含数字、字母和|-,其中:|- 表示子目录的层次符号;字母或数字组成目录名(字母大小写敏感)。某一子目录挂接在其前面、最近的上一层目录下。给定一组目录结构字符串,及待删除的目录名(不含路径)的列表,请按如下要求删除所有符合条件的目录:仅叶子目录,且在待删除的目录名列表中,才可以被删除。注意:某目录的子目录被全部删除后,也视为叶子目录。

2024-05-20 15:51:10 704

原创 信号解码运算

无线基站接收到手机上报的某种信息(例如11@2$3@14)后,需要先进行解码操作,再计算结果。现给定一个字符串,代表一个手机上报的待解码信息,请按照解码规则进行解码和计算,并返回计算结果。

2024-05-16 17:22:30 378

原创 数据库缓存

缓存是一种提高数据库查询效率的手段,现使用训练数据进行模拟访问,以对缓存机制进行优化。给定缓存大小和训练数据(一组数据编号),依次模拟访问这组数据,请分析在此访问规则下最少的数据库访问次数。

2024-05-16 15:45:45 526

原创 Redis详解(三)

缓存雪崩是指缓存同一时间大面积的失效,所以,后面的请求都会落到数据库上,造成数据库短时间内承受大量请求而崩掉。

2024-05-13 17:42:21 459

原创 Redis详解(一)

可以对 String 进行自增自减运算,从而实现计数器功能。Redis 这种内存型数据库的读写性能非常高,很适合存储频繁读写的计数量。Redis相比其他缓存,有一个非常大的优势,就是支持多种数据类型。数据类型说明string字符串,最简单的k-v存储hashhash格式,value为field和value,适合ID-Detail这样的场景。list简单的list,顺序列表,支持首位或者末尾插入数据set无序list,查找速度快,适合交集、并集、差集处理sorted set有序的set。

2024-05-13 17:25:08 945

原创 Redis详解(二)

原子性(Atomicity)原子性是指事务是一个不可分割的工作单位,事务中的操作要么都发生,要么都不发生。一致性(Consistency)事务前后数据的完整性必须保持一致。隔离性(Isolation)多个事务并发执行时,一个事务的执行不应影响其他事务的执行持久性(Durability)持久性是指一个事务一旦被提交,它对数据库中数据的改变就是永久性的,接下来即使数据库发生故障也不应该对其有任何影响Redis的事务总是具有ACID中的一致性和隔离性,其他特性是不支持的。

2024-05-13 17:13:40 1096

原创 最小距离和

终端公司的零售店需要定期去仓库提取货物,假设零售店和仓库在一个矩阵上:相邻点的距离为 1;只能通过上下左右走动。矩阵元素的值仅为三种:0,表示仓库;-1,表示障碍;1,表示零售店。注:障碍无法通过,其它可以通过。为了将取货效率最大化,需要计算每个零售店走到最近仓库的最小距离,并输出这些最小距离的和:无法到达仓库的零售店,不参与距离和的计算;没有零售店或者没有仓库的话,返回0;

2024-05-13 15:13:36 333

原创 ElasticSearch笔记

在搜索引擎中,每个文档都有一个对应的文档 ID,文档内容被表示为一系列关键词的集合。例如,某个文档经过分词,提取了 20 个关键词,每个关键词都会记录它在文档中出现的次数和出现位置。那么,倒排索引就是 关键词到文档 ID 的映射,每个关键词都对应着一系列的文件,这些文件中都出现了该关键词。有了倒排索引,搜索引擎可以很方便地响应用户的查询。要注意倒排索引的两个重要细节:● 倒排索引中的所有词项对应一个或多个文档● 倒排索引中的词项 根据字典顺序升序排列。

2024-05-11 09:08:21 541

原创 任务调度算法

某分布式任务调度系统有 taskNum 个任务(编号从 1 到 taskNum)需要调度,调度策略:任务之间可能存在依赖关系,且无循环依赖,如任务1 依赖任务2,那么要等待任务2执行完才能执行任务1;如果任务之间没有依赖关系,则可以并发执行(假设并发所需资源是充足的)。现给出任务间的依赖关系,并假设每个任务的执行时间恒为 1 分钟,请计算执行完这 taskNum 个任务所需的最短时间(单位分钟)。

2024-05-10 17:35:52 243

原创 系统重构思路

现在是进行重构的恰当时机吗?重构前需要做什么准备?如何保障重构工作顺利完成并达成预期目标?从这几个大家都关心的问题,来谈谈重构工作遵循的基本思路和原则。

2024-05-10 09:39:50 724

原创 DDD领域模型学习资料

官方实例:https://github.com/citerus/dddsample-core。阿里COLA:https://github.com/alibaba/COLA。

2024-05-10 09:30:20 266

原创 Mini订货系统

请实现一个Mini订货系统,提供订货、发货、查询功能:OrderSystem() — 系统初始化。order(int customerId, string[] goods) — 表示某客户的一次订货,goods每个元素表示一件商品,值为商品种类:同一客户可以多次订货;单次订货,可对同一种类的商品订购多件。deliver(string[] goods) — 表示发货多件商品,goods含义同上:每个元素表示一件商品,值为商品种类依次将每件商品按照订购的先后顺序发给订购这件商品的客户。

2024-05-10 08:53:19 483

原创 字符编码(十六进制)

假设一个简易的变长编码规则XUTF:每个字符有一个唯一编号值 unicodeVal(如汉字“华”的编号十进制值是21326),使用1~6个字节进行编码,编码规则如下:编码过程:参考编号值范围,根据 unicodeVal 值判断需要几个字节进行编码,然后依次把 unicodeVal 的二进制比特填充到二进制格式中的有效位上:右侧对齐、左侧补 0;注意:固定位不变。现给定某个字符的十进制编号值 unicodeVal,请按XUTF编码规则对该字符进行编码,输出编码后的十六进制字符串(大写)。

2024-05-08 17:05:55 1043

原创 简单负载均衡

某工程师为了解决服务器负载过高的问题,决定使用多个服务器来分担请求消息。现给定 k 台服务器(编号从 1 到 k),以及一批请求消息的信息,格式为到达时刻 负载大小,消息说明:每个时刻最多只有一条消息到达;负载大小表示服务器处理该消息所需时长。请计算在负载分担规则下,哪些服务器处理的负载最高(服务器处理的负载为所处理的所有消息的负载累加和),并以升序返回这些服务器的编号。负载分担规则:按顺序循环分配服务器,如:有3台服务器且都空闲,分配的方式为 1->2->3->1…;

2024-05-08 17:04:13 709

原创 快速排序应用

著名的快速排序算法里有一个经典的划分过程:通常采用某种方法取一个元素作为主元,通过交换,把比主元小的元素放到它的左边,比主元大的元素放到它的右边。给定一个划分后的正整数序列,请问有多少个元素可能是划分过程中选取的主元?并按升序输出这些主元。

2024-05-08 16:46:36 241

原创 关键字标识

给定一个关键词集合 words 和一个字符串 inputStr,要求将 inputStr 中出现的所有关键词用标签标记:关键词标签的起始为,结束为。把可以合并的标签进行合并,即使用最少的标签。合并规则如下:关键词相邻则进行合并,如 ab、cd为关键词,且在字符串中相邻,则合并为abcd关键词相交则进行合并,如 zhi、hid为关键词,且在字符串中相交,则合并为zhid。

2024-05-08 16:45:43 525

原创 JAVA中大量if else优化

1、简介大量的if嵌套让代码的复杂性增高而且难以维护。本文将介绍多种解决方案。2、案例下面模拟业务逻辑,根据传入的条件作出不同的处理方式。public static boolean consume(PurchaseOrderMessageBody purchaseOrder) { PurchaseTypeEnum purchaseTypeEnum = PurchaseTypeEnum.getPurchaseTypeEnumByName(purchaseOrder.getOrderType()

2021-10-08 15:22:18 2550 1

原创 并发锁及其原理

==== =锁= ====1、Synchronized原理是什么? Synchronized 是由JVM实现的一种实现互斥同步的锁 ,被 Synchronized修饰过的程序 块,在编译前后被编译器生成了monitorenter和monitorexit两个字节码指令。 虚拟机执行到monitorenter指令时, 尝试获取对象的锁:如果这个对象没有锁定, 或者当前线程 已经拥有了这对象的锁,把锁的计数器 +1;当执行monitorexit指令时将锁计数器-1;当计数器为 0时,锁就被释

2021-04-20 17:37:18 224

原创 Redis笔记

==== =Redis= ====1、Redis为什么这么快 ①、完全基于内存,绝大部分请求是纯粹的内存操作,非常快速。 ②、数据结构简单,对数据操作也简单,Redis 中的数据结构是专门进行设计的; ③、采用单线程,避免了不必要的上下文切换和竞争条件,也不存在多进程或者多线程导致的切换 而消耗 CPU,不用去考虑各种锁的问题,不存在加锁释放锁 操作,没有因为可能出现死锁而 导致的性能消耗; ④、使用多路 I/O 复用模型,非阻塞 IO; ⑤、Redis底层模型自

2021-04-20 17:32:43 153

原创 多线程笔记

==== =多线程= ====1、创建线程有四种方式: 继承 Thread 类;实现 Runnable 接口;实现 Callable 接口; 使用 Executors 工具类创建线程池继承 Thread 类2、线程的 run()和 start()有什么区别? 1)start() 方法用于启动线程,run() 方法用于执行线程的运行时代码。 2)run() 可以重复调用,而 start() 只能调用一次。 3)调用start()方法无需等待 run方法体代码执行完,可以继续执行其他的代码;此

2021-04-20 10:22:28 120

转载 Mysql笔记

==== =MySQL= ====1、数据隔离级别分为不同的四种:SERIALIZABLE :最严格的级别,事务串行执行,资源消耗最大;REPEATABLE READ :保证了一个事务不会修改已经由另一个事务读取但未提交(回滚)的数据。避免了“脏读取”和“不可重复读取”的情况,但是带来了更多的性能损失。READ COMMITTED :大多数主流数据库的默认事务等级,保证了一个事务不会读到另一个并行事务已修改但未提交的数据,避免了“脏读取”。该级别适用于大多数系统。READ UNCOMMITED :

2021-04-19 17:30:24 77

原创 JVM基础

==== =JVM= ====1、JVM 运行时数据区 1)程序计数器(Program Counter Register):当前线程所执行的字节码的行号 指示器, 字节码解析器的工作是通过改变这个计数器的值,来选取下一条需要执行的 字节码指令, 分支、循环、跳转、异常处理、线程恢复等基础功能,都需要依赖这个 计数器来完成; 2)Java 虚拟机栈(Java Virtual Machine Stacks):用于存储局部变量表、操作 数栈、动态链 接、方法出口等信

2021-04-19 17:16:36 107

原创 输入两个字符串,找出字符串1在字符串2中的所有字符,去重并按照ASCII码排序.

import java.util.*;/** * Description: TODO * 输入两个字符串,找出字符串1在字符串2中的所有字符,去重并排序 * 例如 输入 comehere welcometoZhuhai * 输出 [c, e, h, m, o] * @author 19040838 * @title: SortSameString * Created by 19040838 on 2021.04.08 15:00 */public class Sor

2021-04-08 17:26:53 1390 1

原创 100个人围成一个圈从1开始报数,输入数m,报到m的人退出,继续从1开始报,报到m继续退出依次下去直到剩余的人小于m不再报数,输出剩下人的位置。

题目:100个人围成一个圈从1开始报数,输入数m,报到m的人退出,继续从1开始报,报到m继续退出依次下去直到剩余的人小于m不再报数,输出剩下人的位置。import java.util.*;public class CircleNum { public static void main(String[] args) { Scanner sc = new Scanner(System.in); int m = sc.nextInt(); List&l

2021-04-08 15:52:40 4294 2

原创 合并交叉区间

import java.util.ArrayList;import java.util.Arrays;import java.util.List;/** * Description: TODO * 合并交叉区间 * @title: Demo * Created by 19040838 on 2021.02.18 18:53 */public class Demo { public static void main(String[] args) { List<

2021-04-07 17:59:47 209

原创 输入正整数求质因子数,输入180 输出2 2 3 3 5

import java.util.Scanner;/** * Description: TODO * 质因子数 * @author 19040838 * @title: Prime * Created by 19040838 on 2021.03.24 9:20 */public class Prime { public static void main(String[] args) { Scanner sc = new Scanner(System.in);

2021-04-07 17:55:22 245

原创 Redis笔记

一、Redis为什么这么快 1、完全基于内存,绝大部分请求是纯粹的内存操作,非常快速。数据存在内存 中,类似于HashMap,HashMap 的优势就是查找和操作的时间 复杂度都是O(1); 2、数据结构简单,对数据操作也简单,Redis 中的数据结构是专门进行设计 的; 3、采用单线程,避免了不必要的上下文切换和竞争条件,也不存在多进程或者多线程导致的切换而消耗 CPU,不用去考虑各种锁的问题, 不存在加锁释放锁 操作,没有因为可能出现死锁而导致的性能消耗; 4、使用多

2021-03-26 16:51:10 79 1

原创 Map和Bean互相转化

import org.apache.commons.beanutils.BeanUtils;import java.beans.BeanInfo;import java.beans.Introspector;import java.beans.PropertyDescriptor;import java.lang.reflect.Field;import java.util.*;import java.util.Map.Entry;/** * Description Map和Bean互相

2021-03-12 19:09:14 391

原创 递归遍历目录下的所有文件

import java.io.File;public class RecursiveTraversalFileAll { public static void main(String[] args) { scanFile("E:\\IDEA-workspace\\ArchitectStudy\\src\\com\\xjc\\study\\test"); } /** * 递归遍历目录下的所有文件 * @param path 扫描路径 *

2021-03-12 19:00:46 218

原创 二叉树的遍历:前、中、后序遍历、层次遍历

1、前序遍历import java.util.Stack;/** * @Description 前序遍历的递归实现与非递归实现 * @Author 19040838 * @Date 2021.03.08 16:53 **/public class BinaryTreePreOrderTraversal { /** * 递归方式:方法一preOrderRe * 方法二preOrderRe1 **/ public static void preOrderRe(

2021-03-12 17:25:42 482

原创 leetcde第十九题java解法——删除链表的倒数第N个节点

/** * Description: TODO * leetcde第十九题java解法——删除链表的倒数第N个节点 * @title: LinkRemove * Created by 19040838 on 2021.03.08 10:42 */public class LinkRemove { public static void main(String[] args) { LinkNode linkNode = new LinkNode(1); li

2021-03-10 17:58:18 59

原创 反转链表方法

/** * Description: TODO * @title: LinkedListReverse * Created by on 2021.03.03 15:35 */public class LinkedListReverse { // 测试 public static void main(String[] args) { ListNode listNode = null; listNode = new ListNode(1);

2021-03-10 17:55:35 196

原创 SpringIOC的注解应用(二)

在之前的项目中,我们都是通过xml文件进行bean或者某些属性的赋值,其实还有另外一种注解的方式,在企业开发中使用的很多,在bean上添加注解,可以快速的将bean注册到ioc容器。1、使用注解的方式注册bean到IOC容器中applicationContext.xml<?xml version="1.0" encoding="UTF-8"?><beans xmlns="http://www.springframework.org/schema/beans" xmln

2021-02-10 09:08:06 86 1

原创 题目描述 功能:输入一个正整数,按照从小到大的顺序输出它的所有质因子(重复的也要列举)(如180的质因子为2 2 3 3 5 )

import java.util.Scanner;/** * Description: TODO 题目描述 功能:输入一个正整数,按照从小到大的顺序输出它的所有质因子(重复的也要列举)(如180的质因子为2 2 3 3 5 ) * 最后一个数后面也要有空格 * 输入描述: 输入一个long型整数 * 输出描述: 按照从小到大的顺序输出它的所有质数的因子,以空格隔开。最后一个数后面也要有空格。 * 示例1 输入 180 输出 2 2 3 3 5 * @title: Demo010 * Cre

2021-02-10 09:06:57 930

原创 数据表记录包含表索引和数值(int范围的正整数),请对表索引相同的记录进行合并,即将相同索引的数值进行求和运算,输出按照key值升序进行输出。

import java.util.*;/** * Description: TODO 题目描述 * 数据表记录包含表索引和数值(int范围的正整数),请对表索引相同的记录进行合并,即将相同索引的数值进行求和运算,输出按照key值升序进行输出。 * 输入描述: 先输入键值对的个数 然后输入成对的index和value值,以空格隔开 * 输出描述: 输出合并后的键值对(多行) * 示例1 * 输入 * 4 * 0 1 * 0 2 * 1 2 * 3 4 * 输出 * 0 3 *

2021-02-10 09:06:38 1063

原创 题目描述 输入一个int型整数,按照从右向左的阅读顺序,返回一个不含重复数字的新的整数。

import java.util.*;/** * Description: TODO * 题目描述 输入一个int型整数,按照从右向左的阅读顺序,返回一个不含重复数字的新的整数。 * 保证输入的整数最后一位不是0。 * 输入描述: 输入一个int型整数 * 输出描述: 按照从右向左的阅读顺序,返回一个不含重复数字的新的整数 * 示例1 输入 9876673 输出 37689 * @title: Demo012 * Created by 19040838 on 2021.01.29 10

2021-02-08 09:09:04 442

华为od性格测试题及答案

华为od性格测试题及答案

2024-01-08

navicat_for_mysql_v11.0.10.rar

navicat_for_mysql_v11.0.10.rar

2021-02-03

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除