Java Socker网络编程
Java Socket 网络编程 - 四层递进学习法第一层:宏观概念与全景图 (The Big Picture) Socket 是什么? 想象一下:你要给远方的朋友寄一封信。Socket 就是这个过程中的”邮箱”——它是你的计算机与网络上其他计算机进行通信的”接口”或”插座”。 核心问题它解决了什么? 如何让不同计算机上的程序互相通信? 如何可靠地传输数据? 如何管理多个并发的网络连接? 在技术栈中的位置: 应用层(你的程序) ↓ Socket API(Socket层 - 我们学的内容) ↓ 传输层(TCP/UDP 协议) ↓ 网络层(IP 协议) ↓ 物理层(网线、光纤等) Socket 是应用程序与操作系统网络功能之间的桥梁。当你用 Socket 发送数据时,操作系统会负责将其转换为网络包并发送到网络上。 第二层:核心语法与组件 (Syntax & Components) Java Socket API 的关键类和方法 | 类名 | 用途 | 谁使用 ...
最硬核的自制力机制技术讨论
小红书出处:【或许是至今最硬核的自制力技术讨论(上) - 哈里凯恩是冠军 | 小红书 - 你的生活兴趣社区】 😆 odsYqoCt1YOMMBx 😆 https://www.xiaohongshu.com/discovery/item/688d8e59000000000303143f?source=webshare&xhsshare=pc_web&xsec_token=ABLP6SfydwEonQSuWMHITB6Q301oW2HfuiBLAYChGcfzs=&xsec_source=pc_share 第一节:自制力模型&三大核心原理1.self-control model 因为有了这个模型,所以我们要做的就是在每次想要在放纵和自律的选择之间,让短期的自律权重V更大,再加上我们的自由意志,最终让自律战胜。 因此才有了具体的三大核心原理:神圣座位、下必为例、线性时延 第二节:回溯寻找关键点**递归稳态迭代协议(Recursive stabilization Iteration...
SQL学习
SQL执行顺序:第1步:FROM - 找到数据源FROM users u MySQL首先要知道数据从哪里来,所以第一步是确定表和给表起别名。 这一步做了什么? 找到指定的表 为表创建别名(如果有的话) 准备读取数据 第2步:JOIN - 连接多张表FROM users uJOIN orders o ON u.id = o.user_id 如果查询涉及多张表,MySQL会根据JOIN条件将它们连接起来。 常见的JOIN类型: INNER JOIN:只返回两表都有的数据 LEFT JOIN:返回左表所有数据,右表没有则为NULL RIGHT JOIN:返回右表所有数据,左表没有则为NULL -- 示例:查询用户及其订单信息SELECT u.name, o.order_dateFROM users uLEFT JOIN orders o ON u.id = o.user_id; 第3步:WHERE - 过滤不需要的行WHERE u.age > 18 AND u.status =...
后段学习路线
TIPS 学习过程中不要太抠细节,计算机是一个应用技术,要学的是它的原理和应用,而不是细节。 第一次学不明白是很正常的,要多轮次的学习才能把知识记到脑海中去 不要浪费时间在长时间的视频课上,很低效 学习路线 语法和数据结构: 语法一般有基础语法,比如如何实现循环,条件分支之类的。 之后再了解一下该语言的一些数据结构就可以了。 进阶的一些概念留到项目中慢慢学习 计算机基础课这部分重点是计算机网络和操作系统,这部分建议看书或者视频课,视频课建议看CSAPP。CSAPP的视频也有文字总结版:https://github.com/huihongxiao/MIT6.S081书籍推荐:TCP/IP协议卷,计算机自顶向下 刷算法题:主要刷好leetcode和hot的100题就可以了,搞清楚用到的所有技巧和方法,多回顾总结,没必要在这上面浪费太多时间,是一个低回报的时候,秉承细水长流的思想。 MYSQl+数据库系统实践:其实就是学SQL语法,学会基本的增删改查,联表子查询等,学完了可以去力扣练手 JAVA Web+...
k8s学习记录
为什么需要k8s? 当你需要管理很多容器时,K8s 帮你自动化处理它们的部署、扩缩容、故障恢复和网络连接等复杂工作。  核心组件 (管理层和员工内部的“部门”)简单了解一下这些“部门”的名字和职能,你之后会经常听到它们: 在控制平面 (大脑) 里: API Server: 集群的唯一入口,像公司的“前台总机”,所有沟通都必须经过它。 etcd: 集群的“数据库/档案室”,存储了集群所有状态信息。 Scheduler: “人力资源调度员”,当需要新容器时,它会决定把这个任务分配给哪个最合适的 Worker Node。 Controller Manager:...
9.3
今天看到了rain离队的视频,反反复复看了三遍每遍都有新的感受,想起曾经熬夜观赛的日子,想起每天起床看比分的日子,想起银河战舰终于捧起major奖杯的那日,又想起CS2后连续多次大赛与冠军失之交臂的夜晚…… 我以前说过不管如何都会喜欢faze clan,只要有你和karrigan在,但现在你走了,为faze效力了十年的你走了,我突然感觉到我好像也很久没有认真得看一次你们的比赛了。 还记得当时看cs比赛的时候羡慕现场可以为你欢呼,当时我多幻想着有这一天,结果为现实的无可奈何和妥协都现在你退役了,我再也没有机会了,这让我更加清楚生活没有那么多等我的东西,想就去做,没人知道明天会怎样,更没人知道明天的意外哪个先来。所以有时候想去看的东西就趁有热情有精力去吧,不要顾虑太多。 文笔太差了表达不出来自己的意思,还是要多看书啊。
线性代数几何理解-3B1B
1.向量是什么?向量在不同人的眼里是不同的东西, 在物理学家眼中可能是力,代表大小和方向。 在计算机学生眼中可能是一个列表,保存物体的信息,比如一个学生的年龄,成绩, 身高,体重,这些可以保存为一个列表/向量 最后在数学家眼中可以看作两者的结合,以一个二维向量举例,一个向量(x,y)代表从原点开始先向x轴移动x,再向Y轴移动y距离得到。 有一个很有意思的点,就是向量或者向量的加法,从数学的角度可以类比于一维的:比如一维的加减法在我们看来,就是在数轴上移动x个单位,比如2+5,在我们学习的时候如何在数轴上找到结果,就是向右移2再向右移5得到。推广到二维其实也是一样的,
算法&C++
Sort()排序sort()函数是C++标准库中的一个排序函数,它可以对数组或容器中的元素进行排序。sort()函数的使用方法如下: #include <algorithm>using namespace std;sort(arr, arr + n); 其中,arr是要排序的数组或容器,n是数组或容器的大小。sort()函数会将数组或容器中的元素按照默认的升序进行排序。sort()函数还可以使用自定义的比较函数进行排序:比较函数本质上是一个**“裁判”**。当 sort 算法对容器中的元素进行排列时,它会不断地从中任意取出两个元素,比如 a 和 b,然后把它们交给你的“裁判”函数,并问一个问题: “根据我的规则,a 是否应该排在 b 的前面?” 你的函数需要回答 true(是)或 false(否)。你返回 true 时,你是在明确地告诉 sort:“a 必须排在 b 的前面”。这是一种严格的、不可动摇的顺序。理解这个就可以灵活掌握sort以及自定义排序规则了。
算法题练习记录
15.三数之和问题个人记录&题解: 该题初学较有难度,后来看过一遍题解后自己尝试写出代码,过程中也是遇到了不少的问题。 首先该题第一步要做的一定是排序,因为题目要求不要重复的三元组,所以需要排序,接下来逐步固定住一个数字假设为a,如果找到了三元组那么a也是最小的数字,同样保证a<=b<=c这样构成的[a,b,c]三元组就是唯一的,当固定好一个后问题就简化为了从后面的数组序列中找到两数之和等于-a,然后同样逐步固定,这期间有很多需要特别注意的地方,一是不能重复,所以需要处理重复的,假设找到一个abc之后,首先b需要逐步往后递推,跳过重复的数字,找到下一个不重复的b,然后减小c,判断是否还存在b+c+a=0。 同样当b循环完一遍后,也意味着以a为第一个数字的三元组也搜索结束了,需要递推到下一个不重复数字的a开始。 代码如下: class Solution { public List<List<Integer>> threeSum(int[] nums) { ...



