摘要: 编写一个算法来判断一个数 n 是不是快乐数。 「快乐数」 定义为: 对于一个正整数,每一次将该数替换为它每个位置上的数字的平方和。 然后重复这个过程直到这个数变为 1,也可能是 无限循环 但始终变不到 1。 如果这个过程 结果为 1,那么这个数就是快乐数。 如果 n 是 快乐数 就返回 true ; 阅读全文
posted @ 2022-03-30 13:04 Ricardo_ML 阅读(34) 评论(0) 推荐(0) 编辑
摘要: 推荐阅读:https://www.cnblogs.com/zwtblog/tag/%E8%AE%A1%E7%AE%97%E6%9C%BA%E7%BD%91%E7%BB%9C/ HTTPS SSL即安全套接字层,SSL 在1999年被IETF(互联网工程组)更名为TLS,即传输安全层,直到现在,TLS 阅读全文
posted @ 2022-03-30 12:18 Ricardo_ML 阅读(1352) 评论(1) 推荐(2) 编辑
摘要: Two Sum Given an array of integers nums and an integer target, return indices of the two numbers such that they add up to target. You may assume that 阅读全文
posted @ 2022-03-21 16:33 Ricardo_ML 阅读(116) 评论(0) 推荐(0) 编辑
摘要: Given two integer arrays nums1 and nums2, return an array of their intersection. Each element in the result must be unique and you may return the resu 阅读全文
posted @ 2022-03-20 21:42 Ricardo_ML 阅读(34) 评论(0) 推荐(0) 编辑
摘要: 利用ASCII码构成哈希表来映射 和这题类似: https://leetcode-cn.com/problems/minimum-window-substring/solution/li-yong-asciima-lai-ying-she-shuang-zhi-9h8bf/ 76. 最小覆盖子串 回 阅读全文
posted @ 2022-03-18 14:49 Ricardo_ML 阅读(39) 评论(0) 推荐(0) 编辑
摘要: 142. 环形链表 II 思路: 设链表共有 a+b 个节点,其中 链表头部到链表入口 有 a 个节点(不计链表入口节点), 链表环 有 b 个节点。 再设两指针分别走了 f,s 步,则有: f = 2sf=2s; fast 比 slow多走了 n 个环的长度,即 f = s + nbf=s+nb; 阅读全文
posted @ 2022-03-17 13:15 Ricardo_ML 阅读(34) 评论(0) 推荐(0) 编辑
摘要: 19. 删除链表的倒数第 N 个结点 思路基本直接出来,双指针,IndexFast 和 IndexSlow 中间相隔 N - 1, 这样 IndexFast 到了最后,IndexSlow 自然就是倒数第 N 个结点。 Java实现 class Solution { public ListNode r 阅读全文
posted @ 2022-03-16 18:54 Ricardo_ML 阅读(32) 评论(1) 推荐(0) 编辑
摘要: [24. 两两交换链表中的节点](https://leetcode-cn.com/problems/swap-nodes-in-pairs/) 给你一个链表,两两交换其中相邻的节点,并返回交换后链表的头节点。你必须在不修改节点内部的值的情况下完成本题(即,只能进行节点交换)。 /** * Defin 阅读全文
posted @ 2022-03-15 22:10 Ricardo_ML 阅读(25) 评论(0) 推荐(0) 编辑
摘要: 206. 反转链表 迭代法 class Solution { public ListNode reverseList(ListNode head) { //申请节点,pre和 cur,pre指向null ListNode pre = null; ListNode cur = head; ListNo 阅读全文
posted @ 2022-03-14 22:16 Ricardo_ML 阅读(25) 评论(0) 推荐(0) 编辑
摘要: Redis数据库 **灵魂拷问:**不是学了MySQL吗,存数据也能存了啊,又学一个数据库干嘛? 在前面我们学习了MySQL数据库,它是一种传统的关系型数据库,我们可以使用MySQL来更好地管理和组织我们的数据,虽然在小型Web应用下,只需要一个MySQL+Mybatis自带的缓存系统就可以胜任大部 阅读全文
posted @ 2022-03-14 21:10 Ricardo_ML 阅读(2320) 评论(0) 推荐(1) 编辑
摘要: 设计链表的实现。您可以选择使用单链表或双链表。单链表中的节点应该具有两个属性:val 和 next。val 是当前节点的值,next 是指向下一个节点的指针/引用。如果要使用双向链表,则还需要一个属性 prev 以指示链表中的上一个节点。假设链表中的所有节点都是 0-index 的。 在链表类中实现 阅读全文
posted @ 2022-03-13 21:02 Ricardo_ML 阅读(28) 评论(0) 推荐(0) 编辑
摘要: 单链表 推荐阅读:https://www.cnblogs.com/zwtblog/tag/%E6%BA%90%E7%A0%81/ 哨兵节点: 哨兵节点在树和链表中被广泛用作伪头、伪尾等,通常不保存任何数据。 我们将使用伪头来简化我们简化插入和删除。 class ListNode { int val; 阅读全文
posted @ 2022-03-12 16:58 Ricardo_ML 阅读(93) 评论(1) 推荐(0) 编辑
摘要: 给你一个链表的头节点 head 和一个整数 val ,请你删除链表中所有满足 Node.val == val 的节点,并返回 新的头节点 。 示例 1: 输入:head = [1,2,6,3,4,5,6], val = 6 输出:[1,2,3,4,5] 来源:力扣(LeetCode) 链接:http 阅读全文
posted @ 2022-03-11 19:13 Ricardo_ML 阅读(44) 评论(1) 推荐(0) 编辑
摘要: 给你一个 m 行 n 列的矩阵 matrix ,请按照 顺时针螺旋顺序 ,返回矩阵中的所有元素。 示例 1: 输入:matrix = [[1,2,3],[4,5,6],[7,8,9]] 输出:[1,2,3,6,9,8,7,4,5] 示例 2: 输入:matrix = [[1,2,3,4],[5,6, 阅读全文
posted @ 2022-03-10 14:13 Ricardo_ML 阅读(27) 评论(0) 推荐(0) 编辑
摘要: SpringBoot一站式开发 官网:https://spring.io/projects/spring-boot Spring Boot可以轻松创建独立的、基于Spring的生产级应用程序,它可以让你“运行即可”。 大多数Spring Boot应用程序只需要少量的Spring配置。 SpringB 阅读全文
posted @ 2022-03-10 11:26 Ricardo_ML 阅读(145) 评论(0) 推荐(0) 编辑
摘要: Linux操作系统与项目部署 **注意:**本版块会涉及到操作系统相关知识。 现在,几乎所有智能设备都有一个自己的操作系统,比如我们的家用个人电脑,基本都是预装Windows操作系统,我们的手机也有Android和iOS操作系统,还有程序员比较青睐的MacBook,预装MacOS操作系统,甚至连Ma 阅读全文
posted @ 2022-03-10 11:21 Ricardo_ML 阅读(150) 评论(0) 推荐(0) 编辑
摘要: 环境安装和项目部署 在学习完了Linux操作系统的一些基本操作之后,我们接着来看如何进行项目的环境安装和部署,包括安装JDK、Nginx服务器,以及上传我们的SpringBoot项目并运行。 我们可以直接使用apt进行软件的安装,它是一个高级的安装包管理工具,我们可以直接寻找对应的软件进行安装,无需 阅读全文
posted @ 2022-03-10 11:20 Ricardo_ML 阅读(52) 评论(0) 推荐(0) 编辑
摘要: SpringBoot其他框架 通过了解其他的SpringBoot框架,我们就可以在我们自己的Web服务器上实现更多更高级的功能。 邮件发送:Mail 我们在注册很多的网站时,都会遇到邮件或是手机号验证,也就是通过你的邮箱或是手机短信去接受网站发给你的注册验证信息,填写验证码之后,就可以完成注册了,同 阅读全文
posted @ 2022-03-09 19:56 Ricardo_ML 阅读(115) 评论(0) 推荐(0) 编辑
摘要: 前后端分离跨域处理 我们的项目已经处于前后端分离状态了,那么前后端分离状态和我们之前的状态有什么区别的呢? **不分离:**前端页面看到的都是由后端控制,由后端渲染页面或重定向,后端需要控制前端的展示,前端与后端的耦合度很高。 比如我们之前都是使用后端来执行重定向操作或是使用Thymeleaf来填充 阅读全文
posted @ 2022-03-09 19:42 Ricardo_ML 阅读(890) 评论(1) 推荐(0) 编辑
摘要: 给你一个字符串 s 、一个字符串 t 。返回 s 中涵盖 t 所有字符的最小子串。如果 s 中不存在涵盖 t 所有字符的子串,则返回空字符串 "" 。 注意: 对于 t 中重复字符,我们寻找的子字符串中该字符数量必须不少于 t 中该字符数量。 如果 s 中存在这样的子串,我们保证它是唯一的答案。 示 阅读全文
posted @ 2022-03-09 18:15 Ricardo_ML 阅读(42) 评论(0) 推荐(0) 编辑
摘要: 推荐阅读 Git学习-图文并茂还有游戏玩! Git版本控制 **注意:**开始学习之前,确保自己的网络可以畅通的连接Github:https://github.com,这个是一个国外网站,连起来特别卡,至于用什么方式实现流畅访问,懂的都懂。 其实版本控制在我们的生活中无处不在,比如你的期末或是毕业答 阅读全文
posted @ 2022-03-09 11:11 Ricardo_ML 阅读(61) 评论(1) 推荐(0) 编辑
摘要: Spring框架技术 SSM(Spring+SpringMVC+Mybatis)阶段的学习,也算是成功出了Java新手村。 前面我们已经学习过Mybatis了。 从这里开始,很多的概念理解起来就稍微有一点难度了,因为你们没有接触过企业开发场景,很难体会到那种思想带来的好处,甚至到后期接触到的几乎都是 阅读全文
posted @ 2022-03-09 10:44 Ricardo_ML 阅读(186) 评论(0) 推荐(0) 编辑
摘要: SpringBoot一站式开发 官网:https://spring.io/projects/spring-boot Spring Boot可以轻松创建独立的、基于Spring的生产级应用程序,它可以让你“运行即可”。 大多数Spring Boot应用程序只需要少量的Spring配置。 SpringB 阅读全文
posted @ 2022-03-08 22:27 Ricardo_ML 阅读(98) 评论(0) 推荐(0) 编辑
摘要: 探究SpringBoot实现原理 **注意:**必须完成SSM阶段源码解析部分的学习,链接:https://www.cnblogs.com/zwtblog/tag/%E6%BA%90%E7%A0%81/ 我们在前面的学习中切实感受到了SpringBoot为我们带来的便捷,那么它为何能够实现如此快捷的 阅读全文
posted @ 2022-03-08 14:04 Ricardo_ML 阅读(92) 评论(1) 推荐(0) 编辑
摘要: 给定一个含有 n 个正整数的数组和一个正整数 target 。 找出该数组中满足其和 ≥ target 的长度最小的 连续子数组 [numsl, numsl+1, ..., numsr-1, numsr] ,并返回其长度。如果不存在符合条件的子数组,返回 0 。 示例 1: 输入:target = 阅读全文
posted @ 2022-03-08 13:54 Ricardo_ML 阅读(95) 评论(0) 推荐(0) 编辑
摘要: MySQL高级 推荐阅读: 锁:https://www.cnblogs.com/zwtblog/tag/%E9%94%81/ 数据库:https://www.cnblogs.com/zwtblog/tag/%E6%95%B0%E6%8D%AE%E5%BA%93/ 函数 聚集函数一般用作统计,包括: 阅读全文
posted @ 2022-03-08 13:37 Ricardo_ML 阅读(75) 评论(1) 推荐(1) 编辑
摘要: 索引 **注意:**本小节会涉及数据结构与算法相关知识。 索引就好像我们书的目录,每本书都有一个目录用于我们快速定位我们想要的内容在哪一页,索引也是,通过建立索引,我们就可以根据索引来快速找到想要的一条记录,大大提高查询效率。 本版块我们会详细介绍索引的几种类型,以及索引的底层存储原理。 单列索引 阅读全文
posted @ 2022-03-07 21:13 Ricardo_ML 阅读(519) 评论(1) 推荐(1) 编辑
摘要: SpringSecurity SpringSecurity是一个基于Spring开发的非常强大的权限验证框架,其核心功能包括: 认证 (用户登录) 授权 (此用户能够做哪些事情) 攻击防护 (防止伪造身份攻击) 我们为什么需要使用更加专业的全新验证框架,还要从CSRF说起。 CSRF跨站请求伪造攻击 阅读全文
posted @ 2022-03-07 15:11 Ricardo_ML 阅读(858) 评论(2) 推荐(0) 编辑
摘要: SpringMVC 学习完Spring框架技术之后,差不多会出现两批人: 一批是听得云里雾里,依然不明白这个东西是干嘛的; 还有一批就是差不多理解了核心思想,但是不知道这些东西该如何去发挥它的作用。 在SpringMVC阶段,你就能逐渐够体会到Spring框架为我们带来的便捷之处了。 此阶段,我们将 阅读全文
posted @ 2022-03-06 20:35 Ricardo_ML 阅读(210) 评论(0) 推荐(0) 编辑
摘要: 给你一个按 非递减顺序 排序的整数数组 nums,返回 每个数字的平方 组成的新数组,要求也按 非递减顺序 排序。 示例 1: 输入:nums = [-4,-1,0,3,10] 输出:[0,1,9,16,100] 解释:平方后,数组变为 [16,1,0,9,100] 排序后,数组变为 [0,1,9, 阅读全文
posted @ 2022-03-06 19:45 Ricardo_ML 阅读(43) 评论(0) 推荐(0) 编辑
摘要: 推荐阅读: 计算机网络: https://www.cnblogs.com/zwtblog/tag/%E8%AE%A1%E7%AE%97%E6%9C%BA%E7%BD%91%E7%BB%9C/ 计算机⽹络相⽐操作系统好学⾮常多,因为计算机⽹络不抽象,你要想知道⽹络中的细节,你都可以通过抓包来分 析。 阅读全文
posted @ 2022-03-06 15:37 Ricardo_ML 阅读(175) 评论(0) 推荐(3) 编辑
摘要: 探究Spring原理 探究IoC原理 首先我们大致了解一下ApplicationContext的加载流程: 我们可以看到,整个过程极为复杂,一句话肯定是无法解释的,所以我们就从ApplicationContext说起吧。 由于Spring的源码极为复杂,因此我们不可能再像了解其他框架那样直接自底向上 阅读全文
posted @ 2022-03-06 12:38 Ricardo_ML 阅读(420) 评论(0) 推荐(0) 编辑
摘要: 深入Mybatis框架 学习了Spring之后,我们已经了解如何将一个类作为Bean交由IoC容器管理,也就是说,现在我们可以通过更方便的方式来使用Mybatis框架,我们可以直接把SqlSessionFactory、Mapper交给Spring进行管理,并且可以通过注入的方式快速地使用它们。 因此 阅读全文
posted @ 2022-03-05 21:21 Ricardo_ML 阅读(490) 评论(0) 推荐(0) 编辑
摘要: 深入了解一下事务的隔离机制(在之前数据库入门阶段并没有提到)我们说了,事务之间是相互隔离互不干扰的,那么如果出现了下面的情况,会怎么样呢: 当两个事务同时在执行,并且同时在操作同一个数据,这样很容易出现并发相关的问题,比如一个事务先读取了某条数据,而另一个事务此时修改了此数据,当前一个事务紧接着再次 阅读全文
posted @ 2022-03-05 20:59 Ricardo_ML 阅读(157) 评论(0) 推荐(1) 编辑
摘要: 集成JUnit测试 既然使用了Spring,那么怎么集成到JUnit中进行测试呢,首先大家能够想到的肯定是: public class TestMain { @Test public void test(){ ApplicationContext context = new AnnotationCo 阅读全文
posted @ 2022-03-05 20:10 Ricardo_ML 阅读(80) 评论(0) 推荐(1) 编辑
摘要: Spring框架技术 SSM(Spring+SpringMVC+Mybatis)阶段的学习,也算是成功出了Java新手村。 前面我们已经学习过Mybatis了。 从这里开始,很多的概念理解起来就稍微有一点难度了,因为你们没有接触过企业开发场景,很难体会到那种思想带来的好处,甚至到后期接触到的几乎都是 阅读全文
posted @ 2022-03-05 20:07 Ricardo_ML 阅读(60) 评论(0) 推荐(0) 编辑
摘要: 给定 s 和 t 两个字符串,当它们分别被输入到空白的文本编辑器后,如果两者相等,返回 true 。# 代表退格字符。 **注意:**如果对空文本输入退格字符,文本继续为空。 示例 1: 输入:s = "ab#c", t = "ad#c" 输出:true 解释:s 和 t 都会变成 "ac"。 示例 阅读全文
posted @ 2022-03-05 13:26 Ricardo_ML 阅读(32) 评论(0) 推荐(0) 编辑
摘要: Java网络编程 推荐阅读: 计算机网络:https://www.cnblogs.com/zwtblog/tag/%E8%AE%A1%E7%AE%97%E6%9C%BA%E7%BD%91%E7%BB%9C/ 计算机网络基础 利用通信线路和通信设备,将地理位置不同的、功能独立的多台计算机互连起来,以功 阅读全文
posted @ 2022-03-05 11:58 Ricardo_ML 阅读(72) 评论(0) 推荐(0) 编辑
摘要: JavaWeb后端 我们学习JavaWeb的最终目的是为了搭建一个网站,并且让用户能访问我们的网站并在我们的网站上做一些事情。 计算机网络基础 在计算机网络(谢希仁 第七版 第264页)中,是这样描述万维网的: 万维网(World Wide Web)并非是某种特殊的计算机网络,万维网是一个大规模的联 阅读全文
posted @ 2022-03-05 11:25 Ricardo_ML 阅读(666) 评论(4) 推荐(1) 编辑
摘要: 前端基础 前端:我们网站的页面,包括网站的样式、图片、视频等一切用户可见的内容都是前端的内容。 后端:处理网站的所有数据来源,比如我们之前从数据库中查询数据,而我们查询的数据经过处理最终会被展示到前端,而用于处理前端数据的工作就是由后端来完成的。 相当于,前端仅仅是一层皮,它直接决定了整个网站的美观 阅读全文
posted @ 2022-03-05 10:26 Ricardo_ML 阅读(147) 评论(0) 推荐(2) 编辑