下一个更大元素 556.下一个更大元素 III给你一个正整数 n ,请你找出符合条件的最小整数,其由重新排列 n 中存在的每位数字组成,并且其值大于 n 。如果不存在这样的正整数,则返回 -1 。 注意 ,返回的整数应当是一个 32 位整数 ,如果存在满足题意的答案,但不是 32 位整数 ,同样返回 -1 。 1234输入:n = 12;输出:21;输入:n = 123;输出:132; 思路:从后向前搜索,第一 2022-11-24 #LeetCode初见
Java新特性 j记录一些与我能看懂的新特性 JDK9 String 底层存储结构发生变化使用字节数组 JDK10局部变量的类型推断 var关键字 12345//var 没有改变Java的本质,var只是一种简便的写法,//就是说在定义局部变量时,任意什么类型都可以用var定义变量的类型会根据所赋的值来判断var list = new ArrayList<String>();list.add(&quo 2022-11-22 #Java额外知识补充
周赛笔记11/13/2022 6234.最小公倍数为 K 的子数组数目给你一个整数数组 nums 和一个整数 k ,请你统计并返回 nums 的 子数组 中满足 元素最小公倍数为 k 的子数组数目。 子数组 是数组中一个连续非空的元素序列。数组的最小公倍数 是可被所有数组元素整除的最小正整数。 示例 1 : 1234567输入:nums = [3,6,2,7,1], k = 6输出:4解释:以 6 为最小公倍数的子数组是:- 2022-11-13 #LeetCode初见
Java基础知识汇总 Object类中有哪些方法 equals():未被重写前,由==来实现,比较引用数据类型的引用地址是否相同 HashCode():本地方法,未被重写前返回对象在堆上的唯一地址值,可以看作是对象的身份ID clone():实现了cloneable接口才可以调用该方法,实现对象的浅复制 getClass():final修饰,获取运行时的类型 toString():若参数为变量,则返 2022-11-13 #Java基础知识
NIO select poll和epoll 套接字编程Socket,表示进程间网络通信的特殊文件类型。本质是内核借助缓冲区形成的伪文件。Linux将套接字封装成文件的目的是为了统一接口,使得读写套接字和读写文件的操作一致。 在TCP/IP协议中,“IP地址+TCP或UDP端口号”唯一标识网络通讯中的一个进程。 “IP地址+端口号”就对应一个socket。欲建立连接的两个进程各自有一个socket来标识,那么这两个socket组成的 2022-11-02 #网络编程基础知识
洪水淹没算法 695. 岛屿的最大面积 123输入:grid = [[0,0,1,0,0,0,0,1,0,0,0,0,0],[0,0,0,0,0,0,0,1,1,1,0,0,0],[0,1,1,0,1,0,0,0,0,0,0,0,0],[0,1,0,0,1,1,0,0,1,0,1,0,0],[0,1,0,0,1,1,0,0,1,1,1,0,0],[0,0,0,0,0,0,0,0,0,0,1,0,0],[0,0, 2022-10-31 #LeetCode初见
计算机网络 计算机网络的分层模型OSI七层模型 应用层:计算机上的网络应用,传输应用报文,如HTTP,SMTP 表示层:用于处理交换信息的表示格式(处理语法和处理语义),格式变换,数据加密解密,数据压缩等功能 会话层:向表示层建立连接,并传输有序的数据,也就是建立同步SYN 运输层:负责两个进程的通信,即端到端,如TCP UDP 网络层:讲分组从源端传到目的端,注重传输过程中的路径选择,如IP 链路层:讲网络 2022-10-31 #计算机基础知识
HashMap HashCodeHashCode(),在未被重写前,即object类中,是一个Native方法,默认返回JVM生成的随机数,是一个独特值,可以看作是对象的身份ID 而在String类中,HashCode被重写 123456789101112public int hashCode() { int h = hash; if (h == 0 && val 2022-10-30 #Java基础知识
买股票问题 121. 买卖股票的最佳时机12345你只能选择某一天买入这只股票,并选择在未来的某一个不同的日子卖出该股票。设计一个算法来计算你所能获取的最大利润。输入:[7,1,5,3,6,4]输出:5解释:在第 2 天(股票价格 = 1)的时候买入,在第 5 天(股票价格 = 6)的时候卖出,最大利润 = 6-1 = 5 。 注意利润不能是 7-1 = 6, 因为卖出价格需要大于买入价格;同时,你不 2022-10-30 #LeetCode初见
Spring bean的生命周期Bean的创建分为三个基本步骤 实例化:可以理解为new一个对象,AbstractAutowireCapableBeanFactory中的createBeanInstance方法 属性注入:可以理解为setter方法完成属性注入,AbstractAutowireCapableBeanFactory的populateBean方法 初始化:按照Spring的规则配置一些初始化的方法 2022-10-26 #JAVA进阶