avatar
文章
538
标签
109
分类
29
首页
归档
分类
标签
关于
xhj的博客
首页
归档
分类
标签
关于

xhj的博客

二分查找的总结(6种变形)
发表于2021-12-15|Algorithm
二分查找的总结 普通的二分查找 普通二分查找的另一种写法 第一个=key的,不存在返回-1 第一个>=key的 第一个>key的 第一个...的总结 最后一个=key的,不存在返回-1 最后一个<=key的 最后一个<key 的 最后一个...的总结 完整测试代码 普通的二分查找最普通的写法: 范围在[L,R]闭区间中,L = 0、R = arr.length - 1; 注意循环条件为 L <= R ,而不是L < R; 1 2 3 4 5 6 7 8 9 10 11 12 13 14 static int bs1(int[] arr,int key){ int L = 0,R = arr.length - 1; //在[L,R]范围内寻找key int mid; while( L <= R){ mid = L + (R - L) / 2; if(arr[mid] == key) return mid; if(arr[...
计算机网络知识总结一计算机网络和协议(一)
发表于2021-11-21|Computer Network
计算机网络知识总结一计算机网络和协议(一) 互联网概述 互联网组成 计算机网络的性能指标 OSI参考模型以及TCP/IP四层模型、五层协议 通信过程、数据传输、网络设备 小结 互联网概述 计算机网络: 由若干节点和连接这些节点的链路组成,网络中的节点可以是计算机、集线器、交换机、或路由器等; 网络之间可以通过路由器相互连接,这就构成了一个更大范围的计算机网路,这样的网路称为互连网,因此互连网是网路的网路; 因特网(互联网): 全球最大的特定互连网; 注意以下两个意思相差很大的名词 internet 和 Internet [RFC 1208]: 以小写字母 i 开始的 internet (互连网) 是一个通用名词,它泛指由多个计算机网络互连而成的计算机网络。在这些网络之间的通信协议〈即通信规则) 可以任意选择,不一定非要使用TCP/IP 协议; 以大写字母 I 开始的 Internet 〈互联网或因特网) 则是一个专用名词,它指当前全球最大的、开放的、由众多网络相互连接而成的特定互连网,它采用 TCP/IP 协议族作为通信的规则,且其前身是美国的 ARPANET;...
Http协议
发表于2021-11-05|Computer Network
Http协议 一、Web和网络基础 一、Web和网络基础1、使用HTTP协议访问Web 客户端: 通过发送请求获取服务器资源的 Web 浏览器等,都可称为客户端( client )。 Web 使用一种名为 HTTP ( HyperText Transfer Protocol ,超文本传输协议)的协议作为规范,完成从客户端到服务器端等一系列运作流程。而协议是指规则的约定。Web是建立在Http协议上通信的; 2、TCP/IPTCP/IP 协议族按层次分别分为以下 4 层:应用层、传输层、网络层和数据链路层; 应用层: TCP/IP 协议族内预存了各类通用的应用服务。比如, FTP ( File Transfer Protocol ,文件传输协议)和 DNS ( Domain Name System ,域名系统)服务就是其中两类。HTTP 协议也处于该层。 传输层: 传输层对上层应用层,提供处于网络连接中的两台计算机之间的数据传输。在传输层有两个性质不同的协议: TCP ( Transmission Control Protocol ,传输控制协...
C语言基础知识总结(一)
发表于2021-10-26|C/C++
C++基础知识总结(一) C++对C语言的提高 命令空间简单使用 const关键字的加强 引用-重点 指针引用 没有引用指针 const引用 默认参数函数重载作用域运算符 new、delete的使用 C++面向对象基础 一个简单案例 构造函数和析构函数 深拷贝和浅拷贝 指向对象成员函数的指针 常对象 常对象成员-常数据成员&常成员函数 指向对象的常指针 指向常变量、对象的指针 静态成员 友元 C++重载运算符 重载基本运算符 重载=号操作符 重载流插入运算符和流提取运算符 综合案例-矩阵加法以及输入输出 函数模板、类模板 案例-简单实现的Vector类模板中的push_back 文件操作 输入输出流 文件读写 C++对C语言的提高命令空间简单使用引用命令空间的三种方式: 直接指定标识符。例如std::cout<<"hello"<<std::endl;; 使用using关键字。例如using std::cout; ; 导入整个命令空间。例如using namespace std; 导入std命名空间; ...
C语言基础知识总结(一)
发表于2021-10-01|C/C++
C语言基础知识总结(一) 编译、运行 编译格式 C语言编译过程 CPU、寄存器 关于VS的C4996错误 进制,原、反、补码 进制相关 原码、反码、补码 原码和补码互换 有符号和无符号的区别 数据类型取值分析 越界问题 数据类型、运算符等基础 C语言数据类型 sizeof关键字 char数据类型-char的本质就是一个1字节大小的整型 浮点数不准确、类型限定符 字符的输入问题 运算符以及优先级 类型转换 数组、字符串、函数 数组初始化的几种方式 字符数组与字符串 字符串输出乱码问题以及一系列字符串要注意的问题 随机数生成 字符串相关函数 函数 编译、运行编译格式gcc -o main main.cpp生成main可执行文件,可以有两种运行方式: 当前目录运行./main; 绝对路径运行,例如/home/zxzxin/C/main,要注意的是绝对路 径没有.,因为.代表的是当前路径,也就是说我们只需要写上完整路径即可; 编译命令格式 1 2 gcc [-option] ... <filename> //c语言编译 g++ [-...
JVM总结(二)
发表于2021-09-05|JavaJVM
JVM总结(二) - 垃圾收集器与内存分配策略 一、垃圾回收概述 二、如何判定对象为垃圾对象 1、引用计数法 2、可达性分析算法 3、引用分类 4、生存还是死亡-finalize()方法 5、回收方法区 三、垃圾回收算法 1、标记清除算法 2、复制算法 3、标记整理算法 4、分代收集算法 四、垃圾收集器 1、各个垃圾收集器的联系 2、Serial收集器 3、ParNew收集器 4、Parallel Scavenge收集器 5、Serial Old收集器 6、Paralell Old收集器 7、CMS收集器 8、G1收集器 9、各种垃圾收集算法的对比 五、内存分配与回收策略 1、对象优先在Eden分配 2、大对象直接进入老年代 3、长期存活对象将进入老年代 4、空间分配担保 5、动态对象年龄判定 6、关于逃逸分析以及栈上分配 一、垃圾回收概述关于垃圾回收,主要探讨下面四个问题。 1、回收区域 程序计数器、虚拟机栈和本地方法栈这三个区域属于线程私有的,只存在于线程的生命周期内,线程结束之后也会消失,因此不需要对这三个区域进行垃圾回收; 垃圾回收主要是针对 Ja...
JVM总结(一)
发表于2021-08-26|JavaJVM
JVM总结(一) - 内存区域与内存管理 一、JVM启动以及JVM体系概述 1、JVM启动流程 2、JVM体系结构 二、运行时数据区总体概括 1、程序计数器 2、Java虚拟机栈 3、本地方法栈 4、Java堆 5、方法区 6、运行时常量池 7、直接内存-不是运行时数据区域的一部分 三、对象相关 1、对象的创建过程 2、对象的内存布局 3、对象的访问定位 一、JVM启动以及JVM体系概述概括: Java有Java编译器和Java虚拟机,编译器将Java源代码转换为.class文件,虚拟机加载并运行.class文件。 Java 的开发遵循“一次编写到处乱跑”理念,它运行在 VM(虚拟机)上。 1、JVM启动流程JVM工作原理和特点主要是指操作系统装入JVM,是通过jdk中java.exe来完成,通过下面4步来完成JVM环境: 创建JVM装载环境和配置; 装载JVM.dll; 初始化JVM.dll并挂界到JNIENV(JNI调用接口)实例; 调用JNIEnv实例装载并处理class类。 2、JVM体系结构JVM体系主要是两个JVM的内部体系结构,分为三个子系...
Java虚拟机性能监控工具
发表于2021-08-19|JavaJVM
Java虚拟机性能监控工具 一、JDK的命令行工具 二、JDK的可视化工具 三、性能调优 一、JDK的命令行工具主要有以下几种: jps (Java Process Status Tool): 虚拟机进程状态工具; jstat (JVM Statistics Monitoring Tool): 虚拟机统计信息监视工具; jinfo (Configuration Info for Java): Java配置信息工具; jmap (Memory Map for Java): Java内存映像工具; jhat (JVM Heap Dump Browser): 虚拟机堆转存储快照工具; jstack (Stack Trace for Java): Java堆栈跟踪工具; 下面一个个来总结: 1、jps : 虚拟机进程状态工具 jps(JVM Process Status Tool,虚拟机进程监控工具),这个命令可以列出正在运行的虚拟机进程,并显示虚拟机执行主类名称,以及这些进程的本地虚拟机唯一ID。 这个 ID 被称为本地虚拟机唯一 ID(Local Virtual Machin...
Java8 Lambda表达式总结
发表于2021-08-01|Java
Lambda表达式总结 一、使用范例以及例子 1、原始方法 2、优化方式一-使用策略模式来优化 3、优化方式二-使用匿名内部类优化 4、优化方式三-使用Lambda表达式 5、优化方式四-使用Stream-API 二、Lambda表达式基础语法 三、函数式接口 四、Lambda练习 1、练习一-Employee类中先按年龄比,年龄相同按照姓名比-都是升序 2、练习二-声明一个带两个泛型的接口,并且对两个Long型数值计算 五、Java8四大内置函数式接口 六、方法引用和构造器引用 1、方法引用 2、构造器引用 一、使用范例以及例子使用匿名内部类: 1 2 3 4 5 6 Comparator<Integer>com = new Comparator<Integer>() { @Override public int compare(Integer o1, Integer o2) { //降序排列 return Integer.compare(o2,o1); } }; 使用Lamb...
复盘|「天池 X LeetCode」在线编程专场选拔赛
发表于2021-07-22|Algorithm
复盘|「天池 X LeetCode」在线编程专场选拔赛统计链表奇数节点【一次遍历】遍历即可,小技巧是ans直接加0/1结果,省去if判断这一步。 1 2 3 4 5 6 7 class Solution: def numberEvenListNode(self, head: Optional[ListNode]) -> int: ans = 0 while head: ans += head.val & 1 head = head.next return ans 光线反射【模拟】用DIRS数组存↑↓←→(对应0123四种状态)。由题意,碰到向左倾斜的镜面,←↑是一对,↓→是一对,可以通过异或操作来转换两种状态(状态 xor 2 即可,总共0123四种方向,0 xor 2=2,2 xor 2 = 0,1 xor 2 = 3,3 xor 2 = 1);碰到向右倾斜的镜面,↓←是一对,↑→是一对,同理...
1…505152…54
avatar
xhj
相关学习笔记
文章
538
标签
109
分类
29
Follow Me
公告
欢迎来到我的博客
最新文章
Claude Code 的远程会话与桥接能力2026-07-24
Claude Code 的多 Agent 与子任务机制2026-07-23
Claude Code 的 Skills 系统2026-07-22
插件、Skills 与 Agent 派生:Claude Code 如何走向平台化2026-07-21
MCP 与 LSP 集成2026-07-20
分类
  • AI Agent40
  • Algorithm20
  • Backend Dev74
  • Big Data2
  • C/C++2
  • Claude Code118
  • Computer Basics18
  • Computer Network2
标签
JVM Graph MLP voting NMF RabbitMQ Linear Regression BFS Tornado DBSCAN Dynamic Programming Git Message Queue Java PCV dijkstra Maven Bayesian optimization Sort Claude Code PCA HBOS DataFrame JVM Performance Monitoring Embedding Garbage Collection Overview BinarySearch Golang Backend Dev HTTP SQL UnionFind JDBC Kafka Neural Networks TwoPointer OLSE Gradient descent GIN Zookeeper
归档
  • 七月 2026 24
  • 六月 2026 26
  • 五月 2026 25
  • 四月 2026 16
  • 三月 2026 20
  • 二月 2026 10
  • 一月 2026 22
  • 十二月 2025 15
网站信息
文章数目 :
538
本站访客数 :
本站总浏览量 :
最后更新时间 :
© 2025 - 2026 By xhj框架 Hexo 8.1.2|主题 Butterfly 5.5.4