paynmind
码龄6年
关注
提问 私信
  • 博客:54,726
    54,726
    总访问量
  • 115
    原创
  • 1,594,179
    排名
  • 62
    粉丝
  • 0
    铁粉

个人简介:小白一个,只能一步一个脚印。

IP属地以运营商信息为准,境内显示到省(区、市),境外显示到国家(地区)
IP 属地:广东省
  • 加入CSDN时间: 2019-05-01
博客简介:

paynmind的博客

查看详细资料
个人成就
  • 获得194次点赞
  • 内容获得31次评论
  • 获得103次收藏
  • 代码片获得219次分享
创作历程
  • 7篇
    2021年
  • 108篇
    2020年
成就勋章
TA的专栏
  • leetcode 刷题笔记
    9篇
  • 数据结构与算法
    17篇
  • 源码分析
    3篇
  • 项目2——广告系统
    17篇
  • 架构
    1篇
  • Web 小知识
    11篇
  • 项目1——leyou
    31篇
  • ssm学习
    27篇
兴趣领域 设置
  • 大数据
    mysqlredis
  • 后端
    spring架构
  • 搜索
    elasticsearch
创作活动更多

AI大模型如何赋能电商行业,引领变革?

如何使用AI技术实现购物推荐、会员分类、商品定价等方面的创新应用?如何运用AI技术提高电商平台的销售效率和用户体验呢?欢迎分享您的看法

175人参与 去创作
  • 最近
  • 文章
  • 代码仓
  • 资源
  • 问答
  • 帖子
  • 视频
  • 课程
  • 关注/订阅/互动
  • 收藏
搜TA的内容
搜索 取消

算法题解 —— 链表(15-19)

内容来源于自己的刷题笔记,对一些题目进行方法总结,用 java 语言实现。15. 单链表的选择排序:题目描述:给定一个无序单链表的头节点 head,实现单链表的选择排序。要求:额外空间复杂度为 O(1)解题思路:开始时默认整个链表都是未排序的部分,对于找到的第一个最小值节点,肯定是整个链表的最小值节点,将其设置为新的头节点,记为 newHead每次在未排序的部分中找到最小值的节点,然后把这个节点从未排序的链表中删除,删除的过程当然要保证未排序部分的链表在结构上不至于断开把删除的节点
原创
发布博客 2021.01.30 ·
222 阅读 ·
1 点赞 ·
1 评论 ·
0 收藏

算法题解 —— 链表(11-14)

内容来源于自己的刷题笔记,对一些题目进行方法总结,用 java 语言实现。11. 将单链表的每 K 个节点之间逆序:题目描述:给定一个单链表的头节点 head,实现一个调整单链表的函数,使得每 K 个节点之间逆序,如果不够 K 个节点一组,则不调整最后几个节点。解题思路:方法一:利用栈结构从左到右遍历链表,如果栈的大小不等于 K,就将节点不断压入栈中当栈的大小第一次达到 K 时,说明第一次凑齐了 K 个节点进行逆序,从栈中依次弹出这些节点,并根据弹出的顺序重新连接,这一组逆序后,
原创
发布博客 2021.01.30 ·
210 阅读 ·
1 点赞 ·
1 评论 ·
0 收藏

算法题解 —— 链表(6-10)

内容来源于自己的刷题笔记,对一些题目进行方法总结,用 java 语言实现。6. 环形单链表的约瑟夫问题:题目描述:输入:一个环形单向链表的头节点 head 和报数的值 m返回:最后生存下来的节点,且这个节点自己组成环形单向链表,其他节点都删掉进阶问题:如果链表节点数为 N,想在时间复杂度为 O(N) 时完成原问题的要求解题思路:普通解法:如果链表为空或者链表节点为1,或者 m 的值小于1,则不用调整就直接返回当环形链表中遍历每个节点,不断转圈,不断让每个节点报数当报数到达
原创
发布博客 2021.01.27 ·
421 阅读 ·
1 点赞 ·
1 评论 ·
1 收藏

算法题解 —— 链表(1-5)

内容来源于自己的刷题笔记,对一些题目进行方法总结,用 java 语言实现。第二章 链表问题1. 打印两个有序链表的公共部分:题目描述:给定两个有序链表的头指针 head1 和 head2,打印两个链表的公共部分。解题思路:因为是有序链表,所以从两个链表的头部开始进行如下判断:如果 head1 的值小于 head2,则 head1 往下移动如果 head2 的值小于 head1,则 head2 往下移动如果 head1 的值与 head2 的值相等,则打印这个值,然后 head1
原创
发布博客 2021.01.21 ·
160 阅读 ·
1 点赞 ·
0 评论 ·
0 收藏

源码剖析集合类——LinkedList

此博客用于个人学习,来源于书籍和网上,对知识点进行一个整理。List 集合的典型实现——LinkedList 类:这是一个由链表构成的类。链表是一种常见的基础数据结构,是一种线性表,但是它并不会按线性的顺序存储数据,而是在每一个字节里存储到下一个节点的指针。使用链表结构可以克服数组需要预先知道数据大小的缺点,链表结构可以充分利用计算机内存空间,实现灵活的内存动态管理。但是链表失去了数组随机读取数据的有点,同时链表由于增加了节点的指针域,空间开销较大。1. 字段属性://链表元素(节点)的个数tra
原创
发布博客 2021.01.20 ·
113 阅读 ·
1 点赞 ·
0 评论 ·
0 收藏

源码剖析集合类——ArrayList

此博客用于个人学习,来源于书籍和网上,对知识点进行一个整理。List 集合的一种典型实现——ArrayList 类:ArrayList 就是动态数组,它能够动态的增加和减少元素,实现了 ICollection 和 IList 接口以及灵活地设置数组的大小。它是一个用数组实现的集合,支持随机访问,元素有序且可以重复。1. 字段属性://集合的默认大小private static final int DEFAULT_CAPACITY = 10;//空的数组实例private static fin
原创
发布博客 2021.01.20 ·
115 阅读 ·
2 点赞 ·
0 评论 ·
0 收藏

源码剖析集合类——Arrays

此博客用于个人学习,来源于书籍和网上,对知识点进行一个整理。重要的工具类—— Arrays 类:Java.uti.Arrays 是 JDK 提供的一个工具类,用来处理数组的各种方法,而且每个方法基本上都是静态方法,能直接通过类名 Arrays 调用。1. asList 方法:该方法的作用是返回由指定数组支持的固定大小列表。/** * 返回指定数组支持的固定大小列表:要注意到这里的参数是泛型 * * Returns a fixed-size list backed by the specifi
原创
发布博客 2021.01.19 ·
136 阅读 ·
1 点赞 ·
0 评论 ·
0 收藏

算法题解 —— 栈(6-9)

内容来源于自己的刷题笔记,对一些题目进行方法总结,用 java 语言实现。6. 生成窗口最大值数组:题目描述:有一个整型数组 arr 和一个大小为 w 的窗口从数组的最左边滑到最右边,窗口每次向右边滑一个位置。例如,数组为 [4,3,5,4,3,3,6,7],窗口大小为3时:[4 3 5] 4 3 3 6 7 窗口中最大值为54 [3 5 4] 3 3 6 7 窗口中最大值为54 3 [5 4 3] 3 6 7 窗口中最大值为54 3 5 [4 3 3] 6 7 窗口中最大值为44 3
原创
发布博客 2020.12.25 ·
206 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

剑指 offer 篇:11 - 15

内容来源于自己的刷题笔记,对一些题目进行方法总结,用 java 语言实现。11.剑指 Offer 13. 机器人的运动范围题目描述:地上有一个m行n列的方格,从坐标 [0,0] 到坐标 [m-1,n-1] 。一个机器人从坐标 [0, 0] 的格子开始移动,它每次可以向左、右、上、下移动一格(不能移动到方格外),也不能进入行坐标和列坐标的数位之和大于k的格子。例如,当k为18时,机器人能够进入方格 [35, 37] ,因为3+5+3+7=18。但它不能进入方格 [35, 38],因为3+5+3+8=
原创
发布博客 2020.12.19 ·
101 阅读 ·
0 点赞 ·
1 评论 ·
0 收藏

算法题解 —— 栈(1-5)

内容来源于自己的刷题笔记,对一些题目进行方法总结,用 java 语言实现。第一章 栈和队列1. 设计一个有 getMin 功能的栈:题目描述:实现一个特殊的栈,在实现栈的基础上,再实现返回栈中最小元素的操作。解题思路:在设计时,我们使用两个栈,一个栈用来保存当前栈中的元素,其功能和一个正常的栈没有区别,这个栈记为 stackData;另一个栈记为 stackMin。具体的实现方式有两种:(一般情况下)数据压栈时,先对 stackMin 进行判断,如果小于等于栈顶元素,压入 stack
原创
发布博客 2020.12.19 ·
396 阅读 ·
1 点赞 ·
2 评论 ·
0 收藏

剑指 offer 篇:6 - 10

内容来源于自己的刷题笔记,对一些题目进行方法总结,用 java 语言实现。6.剑指 Offer 09. 用两个栈实现队列题目描述:用两个栈实现一个队列。队列的声明如下,请实现它的两个函数 appendTail 和 deleteHead ,分别完成在队列尾部插入整数和在队列头部删除整数的功能。(若队列中没有元素,deleteHead 操作返回 -1 )示例 1:输入:["CQueue","appendTail","deleteHead","deleteHead"][[],[3],[],[]]
原创
发布博客 2020.12.12 ·
117 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

剑指 offer 篇:1 - 5

内容来源于自己的刷题笔记,对一些题目进行方法总结,用 java 语言实现。1.剑指 Offer 03. 数组中重复的数字题目描述:找出数组中重复的数字。在一个长度为 n 的数组 nums 里的所有数字都在 0~n-1 的范围内。数组中某些数字是重复的,但不知道有几个数字重复了,也不知道每个数字重复了几次。请找出数组中任意一个重复的数字。示例1:输入:[2, 3, 1, 0, 2, 5, 3]输出:2 或 3解题思路:Set 集合存储,循环查找有无重复。原地置换,其实与前一
原创
发布博客 2020.12.12 ·
112 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

第十七章 广告系统的可用性测试

此博客用于个人学习,来源于网上,对知识点进行一个整理。1. 前期准备:在进行测试前,需要对 SpringCloud 的核心组件之一——Hystrix Dashboard 有个了解。1.1 Hystrix Dashboard 是什么:Hystrix 提供了对于微服务调用状态的监控信息,但是需要结合 spring-boot-actuator 模块一起使用。Hystrix Dashboard 主要用来实时监控 Hystrix 的各项指标信息。通过 Hystrix Dashboard 反馈的实时信息,可以
原创
发布博客 2020.11.23 ·
543 阅读 ·
2 点赞 ·
2 评论 ·
1 收藏

第十六章 广告检索系统(二)

此博客用于个人学习,来源于网上,对知识点进行一个整理。1. 根据匹配信息实现对推广单元的再筛选:1.1 完善 UnitDistrictIndex:之前定义的 UnitDistrictIndex 类中并没有 match 的实现方法,需要我们去添加。public boolean match(Long adUnitId, List<DistrictFeature.ProvinceAndCity> districts){ if (unitDistrictMap.containsKey(a
原创
发布博客 2020.11.18 ·
401 阅读 ·
0 点赞 ·
0 评论 ·
1 收藏

第十五章 广告检索系统(一)

此博客用于个人学习,来源于网上,对知识点进行一个整理。1. 广告检索服务功能的介绍:前面针对我们的广告检索服务,我们进行了全量索引和增量索引的设计与实现,接下来就是对于广告检索系统的功能进行一个介绍。广告检索服务是我们广告系统中最重要的功能,...
原创
发布博客 2020.11.18 ·
1627 阅读 ·
0 点赞 ·
0 评论 ·
7 收藏

从架构演变来看分布式

此博客用于个人学习,来源于网上,对知识点进行一个整理。1. 背景与前言:现在的架构很多,各种各样的,如高并发架构、异地多活架构、容器化架构、微服务架构、高可用架构、弹性化架构等,还有和这些架构相关的管理型的技术方法,如 DevOps、应用监控、自动化运维、SOA 服务治理、去 IOE 等等,还有很多。那什么是分布式系统?分布式系统是支持分布式处理的软件系统,是由通信网络互联的多处理机体系结构上执行任务的系统。包括分布式操作系统、分布式程序设计语言及其编译系统、分布式文件系统分布式数据库系统等,当然这些
原创
发布博客 2020.11.17 ·
237 阅读 ·
13 点赞 ·
0 评论 ·
3 收藏

第十四章 广告检索系统——Binlog 增量数据的投递

此博客用于个人学习,来源于网上,对知识点进行一个整理。1. 增量数据投递前的准备工作:MySQL 增量数据的投递核心目的是构建检索服务中的增量索引,也就是说 IncrementListener 中使用到的 Isender 的方法去投递增量数据。首先我们观察到 AdPlanTable 中有两个特殊的索引——startDate 和 endDate。Long 和 Integer 这种类型的数据对于 MySQL 的表达不会有问题。但对于 Date 这种类型,Binlog 序列化成字符串,所以说我们需要去搞清楚
原创
发布博客 2020.11.17 ·
261 阅读 ·
0 点赞 ·
0 评论 ·
1 收藏

第十二章 广告检索系统——监听 Binlog 构造增量索引(一)

此博客用于个人学习,来源于网上,对知识点进行一个整理。
原创
发布博客 2020.11.15 ·
396 阅读 ·
0 点赞 ·
0 评论 ·
1 收藏

第十三章 广告检索系统——监听 Binlog 构造增量索引(二)

此博客用于个人学习,来源于网上,对知识点进行一个整理。1. 根据 Binlog 对象构造增量数据:接下来利用 Binlog 对象去构造增量数据,然后将增量数据投递出去,构建增量索引。在构建增量数据之前,先去做一些准备工作。因为我们将 Binlog 解析出来的对象看起来还是比较复杂,里面一些元素对于投递工作去构建增量索引是不需要的。所以我们需要对这个对象进行简化。1.1 准备工作:@Data@NoArgsConstructor@AllArgsConstructorpublic class MyS
原创
发布博客 2020.11.15 ·
272 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

第十一章 广告检索系统——加载全量索引(二)

此博客用于个人学习,来源于网上,对知识点进行一个整理。1. 索引操作:我们之前实现了将数据库中的索引信息导入到文件中, 目的是在检索的过程中实现数据的加载,构造全量索引。 但是由于写入文件的数据格式和索引的数据格式不一样,于是我们要定义好索引的操作。但由于我们之前定义了索引的增删改查方法,于是我们只需要直接调用就可以实现从文件中获取信息构造全量索引。1.1 索引操作 handler 的定义与说明:定义一个枚举,对应索引的操作类型。public enum OpType { ADD,
原创
发布博客 2020.11.14 ·
375 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏
加载更多