自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 【JavaWeb】JavaWeb笔记 Servlet

静态资源:无需在程序运行时通过代码运行生成的资源,在程序运行之前就写好的资源. 例如:html css js img ,音频文件和视频文件动态资源:需要在程序运行时通过代码运行生成的资源,在程序运行之前无法确定的数据,运行时动态生成,例如Servlet,Thymeleaf … …动态资源指的不是视图上的动画效果或者是简单的人机交互效果从代码层面上来讲,Servlet就是一个接口用来接收、处理客户端请求、响应给浏览器的动态资源。

2024-10-01 15:45:00 443

原创 【JavaWeb】JavaWeb笔记 HTTP

HTTP 超文本传输协议是一种详细规定了浏览器和万维网服务器之间**(客户端和服务器之间)互相通信的规则**客户端与服务端通信时传输的内容我们称之为报文。HTTP协议就是规定报文的格式交互的方式请求:永远都是客户端向服务端发送响应:永远都是服务端向客户端返回数据的格式请求时发送的数据(客户端发送给服务器的) 称之为请求报文响应式返回的数据(服务器发送给客户端的) 称之为响应报文报文有规定的格式报文首部请求报文响应报文行请求行响应行头请求头响应头报文主体请求体响应体。

2024-09-29 15:07:19 905

原创 【JavaWeb】JavaWeb笔记 JavaScript部分

JavaScript简介JS是一种运行于浏览器端上的小脚本语句,可以实现网页如文本内容动画,数据动态变化和动画特效等,JS有 如下特点脚本语言JavaScript是一种解释型的脚本语言。不同于C、C++、Java等语言先编译后执行,JavaScript不会产生编译出来的字节码文件,而是在程序的运行过程中对源文件逐行进行解释。基于对象JavaScript是一种基于对象的脚本语言,它不仅可以创建对象,也能使用现有的对象。但是面向对象的三大特性:『封装』、『继承』、『多态』中,JavaS

2024-08-26 08:31:21 367

原创 【JavaWeb】尚硅谷 JavaWeb笔记 CSS部分

行内式,通过元素开始标签的style属性引入, 样式语法为 样式名:样式值;样式名:样式值;style隶书;缺点。

2024-08-25 15:45:00 570

原创 【JavaWeb】尚硅谷 JavaWeb笔记 HTML部分

HTML是Hyper Text Markup Language的缩写。意思是超文本标记语言。它的作用是搭建网页结构,在网页上展示内容超文本:HTML文件本质上是文本文件,而普通的文本文件只能显示字符。但是HTML技术则通过HTML标签把其他网页、图片、音频、视频等各种多媒体资源引入到当前网页中,让网页有了非常丰富的呈现方式,这就是超文本的含义——。

2024-08-24 18:00:00 799

原创 【MySQL】 黑马 MySQL进阶 笔记

介绍索引(index)是帮助MySQL高效获取数据的数据结构(有序)。在数据之外,数据库系统还维护着满足特定查找算法的数据结构,这些数据结构以某种方式引用(指向)数据, 这样就可以在这些数据结构上实现高级查找算法,这种数据结构就是索引——可以类比二叉搜索树优缺点优势提高数据检索的效率,降低数据库的成本通过索引列对数据进行排序,降低数据排序的成本,降低CPU的消耗。劣势索引列也是要占用空间的(硬盘价格低,可忽略)

2024-08-23 22:36:24 1769

原创 【MySQL】黑马 MySQL基础 笔记

基于表创建的数据库约束是作用于表中字段上的规则,用于限制存储在表中的数据目的:保证数据库中数据的正确、有效性和完整性约束描述关键字非空约束限制该字段的数据不能为nuIlNOT NULL唯一约束保证该字段的所有数据都是唯一、不重复的UNIQUE主键约束主键是一行数据的唯一标识,要求非空且唯一默认约束保存数据时,如果未指定该字段的值,则采用默认值,默认值直接加在后面DEFAULT检查约束(8.0.16版本之后)保证字段值满足某一个条件,括号里写条件CHECK()外键约束。

2024-08-23 22:35:30 987

原创 【Java】 Java 8 新特性笔记

Lambda 表达式的基础语法:Java8中引入了一个新的操作符 “->” 该操作符称为箭头操作符或Lambda 操作符箭头操作符将 Lambda 表达式拆分成两部分左侧:Lambda 表达式的**参数列表**(其实就是接口中的抽象方法的形参列表)右侧:Lambda 表达式中所需执行的功能, 即 **Lambda 体**(其实就是重写的抽象方法的方法体)化简依据:函数式接口的方法只有固定一个,可以化简。参数类型由泛型固定,可以化简**本质:作为==函数式接口的实例==**

2024-08-08 21:52:26 790

原创 【Java】韩顺平Java学习笔记 第23章 反射

简单来说,符号引用是类文件中的抽象表示,而直接引用是虚拟机内部使用的具体引用。虚拟机在加载类时会解析这些符号引用,以便程序能够正确地访问类的方法和字段。这一过程保证了程序的可移植性和安全性。

2024-08-08 21:48:51 660

原创 【Java】韩顺平Java学习笔记 第22章 多用户通讯系统

可能导致的错误:如果在接收方每次都是new一个新的ObjectInputStream 来接收,而发送方只 new 过一个 ObjectOutputStream,之后每次都是用new过的 ObjectOutputStream对象来发送东西,这样就会导致之后并没有添加头部。而接受方每次都是新的 new,则每次接收都要检测头部,当发送方没有提供头部时,接收方就把内容当做了头部,导致出错。),就会认为这是不合法的类型代码,因为它期望的是对象的实际数据,于是抛出了。的情况下,再次创建一个新的。

2024-07-30 09:30:00 538

原创 【Java】韩顺平Java学习笔记 第21章 网络编程

时,数据实际上并不是立即写入到最终的目标输出流(如文件或网络连接),而是先写入到了缓冲区中。如果要接受来自客户端的字符串,直接用socket.getInputStream得到的inputStream读取即可,在while循环中读取,用。这是推荐的做法,尤其是在不需要继续使用该流的场景下。方法,这个方法会关闭输出流,它会导致尚未写出的缓冲数据被丢弃,且后续的写操作将抛出异常。得到和socket关联的输出流,输入流同理(没有得到内容的话,会阻塞)输出流的写入端,从而导致任何进一步的写入操作都可能失败,并抛出。

2024-07-29 21:58:41 469

原创 【Java】韩顺平Java学习笔记 第19章 IO流

保存数据的地方文件流:文件在程序中是以流的形式操作的输入流:数据从数据源(文件)到程序(内存)的路径,输出流相反。

2024-07-29 21:57:30 584

原创 Datawhale AI夏令营 从零入门机器学习竞赛 Task 2

理解:GBDT就是用很多棵小树(这里的小树指的是决策树,一种简单的分类或预测工具)一起合作,每棵树都尽自己的一份力去学会一点东西,然后把这些小树的力量叠加起来,就变成了一棵超级厉害的大树,也就是我们的最终模型。这个过程就像是老师教学生,一开始学生可能学得不太好(弱分类器),老师就根据学生的错误一点点指导(梯度提升),每次指导都针对上次的错题重点讲解,慢慢地,学生就越学越好了,最后成为学霸(最优模型)。使用用户过往的行为(点击、曝光未点击、购买等)作为训练数据,来预测用户点击或购买的概率。

2024-07-17 22:49:36 765

原创 Datawhale AI夏令营 从零入门机器学习竞赛 Task 1

给定多个房屋对应电力消耗历史N天的相关序列数据等信息,预测房屋对应电力的消耗,即。

2024-07-14 23:52:47 373

原创 【Java】韩顺平Java学习笔记 第17章 多线程基础

主线程直接调用 run 方法,则run 方法会被当作一个普通的方法,主线程要执行完 run 方法后才会执行主线程剩余的代码,即主线程被阻塞。故直接调用 run 方法,没有真正地创建一个子线程,必须调用 start 方法start 源码里会执行 start0 方法是本地方法(native方法),由 jvm 机和操作系统 调用调用 start0 方法后,只是将线程变成了可运行状态,具体什么时候上 CPU 执行,需要根据操作系统的调度算法。

2024-05-19 15:30:00 1361 1

原创 【Java】韩顺平Java学习笔记 第16章 坦克大战

重写 JPanel 的 paint 方法引入参数Graphics(画笔)Graphics提供绘图方法。建立的画图的类需要继承。paint被调用的时机。与文件名相同的类继承。

2024-05-18 13:00:00 772

原创 【Java】韩顺平Java学习笔记 第15章 泛型

自定义泛型类是自己写的带泛型的类class Tiger<T,R,M>{} //标识符可以有多个普通成员(属性,方法)可以使用泛型使用泛型的数组,不能初始化(不能在类内 new,但是可以在类内new一个HashMap,因为这时并没有创建空间,HashMap只有在添加Node节点时才会创建空间),因为不确定类型,不知道开辟多大空间静态方法和静态属性不能使用类的泛型,因为静态和类相关,在类加载时对象还没有创建,而泛型在创建对象时才会确定语法静态成员也不能使用泛型。

2024-05-17 15:13:47 843

原创 【LeetCode 刷题笔记】链表 哈希表(15-29)

当我们遇到了要快速判断一个元素是否出现集合里的时候,就要考虑哈希法集合底层实现是否有序数值是否可以重复能否更改数值查询效率增删效率std::set红黑树有序否否O(log n)O(log n)红黑树有序是否O(logn)O(logn)哈希表无序否否O(1)O(1)映射底层实现是否有序数值是否可以重复能否更改数值查询效率增删效率std::map红黑树key有序key不可重复key不可修改O(logn)O(logn)红黑树。

2024-05-17 15:12:20 718

原创 【LeetCode 刷题笔记】12、13、14

你想要尽可能多地收集水果。你正在探访一家农场,农场从左到右种植了一排果树。这些树用一个整数数组。所有元素,且元素按顺时针顺序螺旋排列的。,返回你可以收集的水果的。,返回矩阵中的所有元素。

2024-04-30 18:36:00 652 1

原创 【LeetCode 刷题笔记】10.有序数组的平方 11.长度最小的子数组

循环开始,快指针向前不断移动,知道经过的数字的和 sum 大于等于 target ,此时移动慢指针,并且不断更新最小数组长度 result 以及经过的数字的和 sum。若某次移动慢指针后的和小于 sum,则继续移动快指针,直到 sum 再次大于 target,如此循环往复。result 的初始值设为一个很大的值(最好是解法一中Int的最大值),如果最后这个值没改变,说明没有符合条件的子序列,返回0。首先要思考 如果用一个for循环,那么参数 i 应该表示 滑动窗口的起始位置,还是终止位置。

2024-04-28 21:20:18 877

原创 【Java】韩顺平Java学习笔记 第14章 集合

prefGrowth是想要增加的长度,传入了oldCapacity >> 1,这里是位运算,向右移动一位,等于原来大小的二分之一,这就是之后每次增加的大小是原来的1.5倍的原因。HashSet 实际上也用了 HashMap , 但其 value 值是系统自定的PRESENT,而Map里value值是自定的(Map 保存具有映射关系的数据 key - value,双列元素)如果是之后的拓展,minCapacity就是现在的容量+1,minCapacity就是“至少需要的容量”的意思。

2024-04-28 19:16:47 1464

原创 【LeetCode刷题笔记】7.删除有序数组中的重复项(26)8.移动零(283)9.比较含退格的字符串(844)

两个字符串,当它们分别被输入到空白的文本编辑器后,如果两者相等,返回。**注意:**如果对空文本输入退格字符,文本继续为空。移动到数组的末尾,同时保持非零元素的相对顺序。,必须在不复制数组的情况下原地对数组进行操作。**进阶:**你能尽量减少完成的操作次数吗?** 删除重复出现的元素,使每个元素。如果所有断言都通过,那么您的题解将被。,返回删除后数组的新长度。,编写一个函数将所有。

2024-04-25 18:09:23 644 1

原创 【LeetCode刷题笔记】6.移除元素(27)

题目给你一个数组 nums 和一个值 val,你需要 原地 移除所有数值等于 val 的元素,并返回移除后数组的新长度。不要使用额外的数组空间,你必须仅使用 O(1) 额外空间并 原地 修改输入数组。元素的顺序可以改变。你不需要考虑数组中超出新长度后面的元素。说明:为什么返回数值是整数,但输出的答案是数组呢?请注意,输入数组是以**「引用」**方式传递的,这意味着在函数里修改输入数组对于调用者是可见的。你可以想象内部操作如下:// nums 是以“引用”方式传递的。也就是说,不对实参作任何拷

2024-04-24 21:15:33 853

原创 【LeetCode刷题笔记】2.搜索插入位置(35)3.x的平方根(69)4.有效的完全平方数 5.在排序数组中查找元素的第一个和最后一个位置(34)

给你一个按照非递减顺序排列的整数数组nums,和一个目标值target。请你找出给定目标值在数组中的开始位置和结束位置。如果数组中不存在目标值target,返回[-1, -1]。你必须设计并实现时间复杂度为O(log n)的算法解决此问题。输入:nums = [5,7,7,8,8,10], target = 8输出:[3,4]输入:nums = [5,7,7,8,8,10], target = 6输出:[-1,-1]输入:nums = [], target = 0输出:[-1,-1]nums。

2024-04-24 09:45:30 486

原创 【LeetCode刷题笔记】1.二分查找(704)

看low == high 是否可以取到,在这里是取得到的,举极端例子[1,1]的区间,1 == 1.修改为 high = mid -1 ,此时high初始值为nums.size() -1 也是这个道理。high取不到,写 high = mid ,即使mid已经判断过,下次判断时mid也不在判断区间内。修改时,假设修改high,因为右闭,high可以取得到,故修改时不能有刚刚已经判断过的mid,即。[1,1)有矛盾,low == high 不可以取到,故写 low<high。

2024-04-24 09:42:58 197

原创 【Java】韩顺平Java 学习笔记 第13章 常用类

即 value 可以修改里面的值,但是不能修改指向的地址。String str = “xxxxx” : 直接在常量池中创建“xxxxx”字符串常量,对象直接指向它。new String 对象:先在堆创建values数组,再指向常量池中的字符串常量(对象在栈中)字符串不可变,一个字符串对象一旦分配,内容不变,修改字符串的值实际上是在常量池创建。对象不相等,但里面的属性指向常量池的同一个对象,这两个属性相等。总结:常量相加,看的是池;包装类与基本数据类型的转换:自动装箱拆箱。一个新的字符串,变量指向它。

2024-04-23 19:47:23 613

空空如也

空空如也

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

TA关注的人

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