Author: 詹学伟

罗马数字转整数

一、题目 罗马数字包含以下七种字符: I, V, X, L,C,D 和 M。 字符 数值 I 1 V 5 X 10 L 50 C 100 D

詹学伟 Published on 2024-07-05

两数之和

一、问题 给定一个整数数组 nums 和一个整数目标值 target,请你在该数组中找出 和为目标值 target 的那 两个 整数,并返回它们的数组下标。 你可以假设每种输入只会对应一个答案。但是,数组中同一个元素在答案里不能重复出现。 你可以按任意顺序返回答案。 示例 1: 输入:nums =

詹学伟 Published on 2024-07-04

哈沙德数

一、题目 如果一个整数能够被其各个数位上的数字之和整除,则称之为 哈沙德数(Harshad number)。给你一个整数 x 。如果 x 是 哈沙德数 ,则返回 x 各个数位上的数字之和,否则,返回 -1 。 示例 1: 输入: x = 18 输出: 9 解释: x 各个数位上的数字之和为 9

詹学伟 Published on 2024-07-03

质数的最大距离

一、题目 给你一个整数数组 nums,返回两个(不一定不同的)质数在 nums 中 下标 的 最大距离。 示例 1: 输入: nums = [4,2,9,5,3] 输出: 3 解释: nums[1]、nums[3] 和 nums[4] 是质数。因此答案是 |4 - 1| = 3。 示例 2: 输

詹学伟 Published on 2024-07-02

阻塞队列的有界和无界

1.阻塞队列是一种特殊队列,它在普通队列的基础上提供了两个附加功能 当队列为空的时候,获取队列中元素的消费者线程会被阻塞,同时唤醒生产者线程; 当队列满了的时候,向队列中添加元素的生产者线程会被阻塞,同时唤醒消费者线程; 2.其中,阻塞队列中能够容纳的元素个数,通常情况下是有界的,比如我们实例化一个

詹学伟 Published on 2024-06-26

什么是hash冲突?如何解决?

一、什么是hash冲突 要了解 Hash 冲突,那首先我们要先了解 Hash 算法和 Hash 表。 Hash 算法 就是把任意长度的输入,通过散列算法,变成固定长度的输出,这个输出结果是散列值。 Hash 表 又叫做“散列表”,它是通过 key 直接访问在内存存储位置的数据结构,在具体实现上,我们

詹学伟 Published on 2024-06-25

双亲委派

要了解"双亲委派"机制,首先需要知道"类的加载机制" 一、类的加载机制 我们自己写的 java 源文件到最终运行,必须经过编译和类加载两个阶段: 编译的过程就是把.java 文件编译成.class 文件。 类加载的过程,就是把 class 文件装载到 JVM 内存中,装载完成以后就会得到一个 Cla

詹学伟 Published on 2024-06-22

RocketMQ如何保证消息不丢失?

一、消息从产生到消费过程 一个消息从生产者产生,到被消费者消费,主要经过这 3 个过程: 生产者产生消息 消息发送到存储端,保存下来 消息推送到消费者,消费者消费完,ack应答 因此如何保证MQ不丢失消息,可以从这三个阶段阐述: 生产者保证不丢消息

詹学伟 Published on 2024-06-22

Centos7访问Windows共享文件

一、Windows设置共享文件夹 首先说明,Centos和windows的网络需要畅通,比如都是在同一局域网内 在Windows系统中,右键点击需要共享的文件夹->属性->共享 点击共享,然后下拉选择一个用户,点击添加,然后点击共享:

詹学伟 Published on 2024-06-18

epoll的原理

设想一个场景: 有100万用户同时与一个进程保持着TCP连接,而每一时刻只有几十个或几百个TCP连接是活跃的(接收到TCP包),也就是说,在每一时刻,进程只需要处理这100万连接中的一小部分连接。那么,如何才能高效地处理这种场景呢?进程是否在每次询问操作系统收集有事件发生的TCP连接时,把这100万

詹学伟 Published on 2024-06-16
Previous Next