- 博客(14)
- 收藏
- 关注
原创 常见常考查找、搜索、排序算法汇总
堆本质上是一个近似完全二叉树,同时满足堆属性。近似完全二叉树: 树的所有层都被完全填满,除了可能的最后一层,最后一层的节点都尽量靠左排列。这个结构特性使得我们可以用一个数组来高效地表示堆,无需指针。对于数组中索引为 i 的节点:其父节点索引为 (i-1)/2其左子节点索引为 2*i + 1其右子节点索引为 2*i + 2堆属性最大堆 (Max-Heap): 每个节点的值都大于或等于其子节点的值。这意味着堆顶元素(数组第一个元素)是整个堆中的最大值。最小堆 (Min-Heap): 每个节点的值都。
2025-07-21 11:04:04
877
原创 socket由浅入深:从创建到实现到底层
Socket 对象 (Kernel Object)这是一个存在于操作系统内核内存中的复杂数据结构。它包含了网络连接的所有状态信息,例如:协议类型 (TCP/UDP)、连接状态 (ESTABLISHED, TIME_WAIT等)、本地/远端IP和端口、指向发送/接收缓冲区的指针、TCP协议控制块 (TCB) 等。它是网络通信的实际资源实体。它内部包含一个引用计数 (reference count),用于追踪有多少个文件描述符指向它文件描述符 (File Descriptor, fd)这是一个。
2025-07-14 17:16:06
670
原创 三次握手和四次挥手底层操作(内核)与拓展
第三次握手(客户端的最终ACK)是客户端对服务器“发起连接”这个行为的最终确认,确保了当前建立的连接是双方都“知情且同意”的。
2025-07-12 21:00:50
604
原创 输入URL的完整追踪(DNS解析NAT地址转换全过程)
源 IP 是你的电脑 IP,目标 IP 是你的网络设置里配置的 DNS 服务器的 IP (比如 114.114.114.114)。提供的一个功能函数(比如 gethostbyname),说:“嘿,老铁,帮我查一下 www.baidu.com 的 IP 地址。请告诉我你的 MAC 地址”。它为这个修改后的 IP 包重新封装一个新的数据链路层帧头,目标 MAC 地址是下一个路由器的 MAC 地址。:路由器将电信号转回数据帧,检查目标 MAC 地址是自己,于是拆掉以太网帧头,得到里面的 IP 数据包。
2025-07-11 10:30:22
505
原创 C++深度概念解析-拷贝构造函数
当你的对象内部有指针指向动态分配的内存时,默认的拷贝行为(浅拷贝)只会复制指针地址,导致两个对象共享同一块内存,非常危险。你需要自己编写拷贝构造函数,来为新对象也分配一块属于它自己的内存,并把原始对象内存里的数据复制过来。
2025-06-26 15:27:02
393
原创 C++算法--STL易混方法对比
最简单的理解,pair存储的两个数据没有直接关系,而map的两个数据称其为键值对,形成一个键→值的映射。我们平常做算法题遇到这种类型非常非常多,这里总结一下常用的方法对比,方便大家记忆。PS:如果需要统计元素出现次数,可以使用。:元素插入后按严格弱序(默认升序)排列。额外的话就属deque比较特殊,:插入、删除、查找均为。:可以遍历有序序列。
2025-06-08 16:22:27
465
原创 npx与npm报错解决(windows11):
cmd打开命令行输入node -v查看下版本(v20.16.0) 太新的删除下载稳定版。如果你还出现类似的报错,同时伴随着npm WARN config global。,方法:先保证你有nvm的情况下,打开任意终端。
2025-03-31 15:22:47
1328
原创 yolo11的C3k2报错解决方案
方案一:如果你是训练模型出现了相关错误,那么请直接升级你的ultralytics到最新版本,这个许多博客也都讲过了方案二:如果你是已经在新版本,并且重新退出再打开项目再运行还是会报错,那么请尝试查找你的此项目之下是否还有额外的旧版本的ultralytics文件夹(像俺一样┭┮﹏┭┮),删除旧版本的之后,重新再打开项目,再运行尝试一下
2025-03-26 20:22:15
938
原创 ReactNative搭建-踩坑系列
我是按照官方给的文档进行环境配置的 ,但并不是一下就运行成功,中间踩了很多次坑有很多报错都没有明确的解决方法,因此我做一下这篇总结,记录一下,万一有人跟我踩了一样的坑呢,希望这篇文档能帮到你~这里注意了,我的打开对应Sdk之后没有tools文件夹,更没有其里面的bin了,那就根本不需要输入后两行了。这里建议别手欠自己下载完就直接解压了哈,因为人家帮你解压,你自己解压得十分钟,而且还有可能报错。我的就一个文件,,,一查还没有出现这情况的,查也查不到,也建立不出来,真是卡死我了。
2025-03-13 12:00:26
673
原创 安装并切换多个JDK版本(Win11-保姆级)
我的是分别安装了JDK21以及JDK-21可以到官网或(无需登录)下载对应你需要的版本。最好你需要的那两个版本下载到一个文件夹里(我的是这样)
2025-03-11 17:44:57
932
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人