自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(10)
  • 收藏
  • 关注

原创 day06-哈希表

2024-05-30 20:59:58 111

原创 day04-链表part2

想法:虚拟节点,链表的增删改都可以用到虚拟节点,2个节点相互交换,需要借助前面一个节点来操作,找到遍历条件,通过画图确定交换逻辑。你不能只是单纯的改变节点内部的值,而是需要实际的进行节点交换。给定一个链表,两两交换其中相邻的节点,并返回交换后的链表。

2024-05-30 20:59:18 223

原创 day03-链表part1

想法:添加节点是在给定下标节点的前面插入,所以要用到下标节点的前一个节点指针,删除给定下标节点也要用到前一个节点指针,所以可以用虚拟头节点。示例 1: 输入:head = [1,2,6,3,4,5,6], val = 6 输出:[1,2,3,4,5]想法:虚拟头节点,遍历链表时,先拿出一个变量来存遍历起始指针,然后用这个变量进行遍历,注意找好遍历条件。示例: 输入: 1->2->3->4->5->NULL 输出: 5->4->3->2->1->NULL。题意:删除链表中等于给定值 val 的所有节点。

2024-05-27 10:26:03 183

原创 数组-双指针&滑动窗口

给定一个含有 n 个正整数的数组和一个正整数 s ,找出该数组中满足其和 ≥ s 的长度最小的 连续 子数组,并返回其长度。想法:拿个新数组装平方后的值,因为平方后的最大值在数组两边,每次比较两边的平方值,大的放新数组里。拿2个指针从两边往中间走,谁的平方值大,谁就走一格。给你一个按 非递减顺序 排序的整数数组 nums,返回 每个数字的平方 组成的新数组,要求也按 非递减顺序 排序。想法:滑动窗口也是双指针的一种特定形式,连续子数组,联想到滑动窗口,窗口起始和终止指针的移动是关键。

2024-05-24 15:45:00 294 1

原创 day01-链表704&27

给定一个 n 个元素有序的(升序)整型数组 nums 和一个目标值 target ,写一个函数搜索 nums 中的 target,如果目标值存在返回下标,否则返回 -1。给你一个数组 nums 和一个值 val,你需要 原地 移除所有数值等于 val 的元素,并返回移除后数组的新长度。不要使用额外的数组空间,你必须仅使用 O(1) 额外空间并。元素的顺序可以改变。你不需要考虑数组中超出新长度后面的元素。leetcode704-二分查找。

2024-05-22 19:46:49 272 1

原创 tcp&ip网络编程笔记

socket()函数中第二个参数是指定数据传输方式,根据数据传输方式的不同,基于网络协议的套接字一般分为TCP套接字和UDP套接字 因为 TCP套接字是面向连接的,因此又称基于流 (stream )的套接字 TCP Transmission Control Protocol (传输控制协议)的简写,意为"对数据传输过程的控制" .计算机之间网络数据的传输除了需要硬件部分,软件部分则是由OS提供的套接字(socket,直译为插座,网络连接,就像插口和插座一样,一方插,一方被插)部件实现的。

2024-04-01 18:35:57 702 1

原创 mybatis中mapper实现及事务实现原理

jdk动态代理实现,mapper是操作数据库的代理对象,是从SqlSession中获取,SqlSession是暴露给我们的操作数据库的API库Configuration是全局配置类,在mybatis启动时,会把所有配置信息加载进这个类中,其中也包括mapper接口的代理对象。在mybatis启动时,会扫描mapper接口并通过一个映射注册器类(MapperRegistry)注册mapper接口的代理对象工厂到一个这个类的属性map中。

2024-02-25 16:30:29 1011

原创 mybatis二级缓存执行流程

在mybatis启动时会加载并解析配置文件,其中就会解析二级缓存的可选项配置,由此是否生成二级缓存,下面这段代码就是解析xxxMapper.xml文件中的子标签来生成二级缓存默认的二级缓存对象是PerpetuateCache,并把缓存封装进MapperStatement,所以一个MapperStatement对应一个二级缓存,一个MapperStatement就是存储一个xxxMapper.xml文件中的信息PerpetualCache内部的缓存其实就是个HashMap。

2024-02-25 11:41:23 232

原创 MyBatis学习笔记

执行sqlsession:参数有两个(statementId和参数对象)根据statementId,去Configuration中的MappedStatement集合中查找 对应的MappedStatement对象;取出MappedStatement中的SQL信息;取出MappedStatement中的statementType,用来创建Statement对象;

2024-01-10 21:20:45 1099

原创 Netty学习笔记

Netty提供非阻塞的、事件驱动的网络应用程序框架和工具,用以快速开发高性能、高可靠性的网络服务器和客户端程序。核心架构:可扩展的事件模型统一的通信api,简化了通信编码零拷贝机制与丰富的字节缓冲区传输服务:支持socket以及datagram(数据报)http传输服务In-VM Pipe (管道协议,是jvm的一种进程)http 以及 websocketSSL 安全套接字协议支持Google Protobuf (序列化框架)支持zlib、gzip压缩支持大文件的传输。

2023-11-25 17:59:43 890

空空如也

空空如也

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

TA关注的人

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