常见知识点总结

1、静态成员

知识点 详细说明
本质 属于,不属于任何一个对象,是所有对象共享的变量
内存位置 存放在全局 / 静态数据区不占用对象内存空间
生命周期 程序启动时分配,程序结束时释放,全程存在
访问方式 1. 类名直接访问:类名::静态变量 2. 对象访问:对象.静态变量
共享特性 所有对象共用同一份数据,修改一处,全部生效
声明与定义 1. 类内声明static 类型 变量名; 2. 类外定义 / 初始化 (必须):类型 类名::变量名 = 值;
与普通成员变量区别 普通成员:每个对象独立一份,随对象创建 / 销毁 静态成员:全类一份,独立于对象

2、DFS和BFS

算法 时间复杂度(邻接表) 空间复杂度(最好 / 最坏)
DFS(递归) O(V+E) O(V)
BFS(队列) O(V+E) O(V)

3、常用排序时间复杂度

排序算法 平均时间复杂度 最好时间复杂度 最坏时间复杂度 空间复杂度 稳定性
冒泡排序 O(n2) O(n) O(n2) O(1) 稳定
选择排序 O(n2) O(n2) O(n2) O(1) 不稳定
插入排序 O(n2) O(n) O(n2) O(1) 稳定
希尔排序 O(n1.3) O(nlogn) O(n2) O(1) 不稳定
快速排序 O(nlogn) O(nlogn) O(n2) O(logn) 不稳定
归并排序 O(nlogn) O(nlogn) O(nlogn) O(n) 稳定
堆排序 O(nlogn) O(nlogn) O(nlogn) O(1) 不稳定
计数排序 O(n+k) O(n+k) O(n+k) O(n+k) 稳定
桶排序 O(n+k) O(n+k) O(n2) O(n+k) 稳定
基数排序 O(d(n+k)) O(d(n+k)) O(d(n+k)) O(n+k) 稳定

4、N/NP问题

分类 问题名称 说明
P 问题(多项式可解) 二分查找 时间复杂度 O(logn)
快速排序 时间复杂度 O(nlogn)
归并排序 时间复杂度 O(nlogn)
冒泡排序 时间复杂度 O(n2)
插入排序 时间复杂度 O(n2)
选择排序 时间复杂度 O(n2)
最短路径 Dijkstra 图论经典可解问题
最小生成树 Kruskal/Prim 图论经典可解问题
NP 完全问题(目前无多项式解法) 旅行商问题 TSP 经典 NPC 问题
哈密顿回路 / 路径 典型 NPC 问题
0-1 背包问题 只能近似 / 动态规划
子集和问题 典型 NPC
图着色问题 典型 NPC
顶点覆盖问题 典型 NPC
最大团问题 典型 NPC

5、HTTP

HTTP 应答报文的结构分为三部分:状态行、响应头(报头)、空行、响应正文

结构部分 作用 示例
状态行 告知请求处理结果 HTTP/1.1 200 OK
报头(响应头) 描述响应元信息 Content-Type: text/html
空行 分隔报头与正文 (仅一个换行符)
正文 实际返回的数据 <html>...</html>

6、string

核心优点 具体含义 一句话总结
AOP 切面 面向切面编程,统一处理日志、事务、权限控制 交叉业务逻辑与核心代码分离
IOC 解耦 控制反转 / 依赖注入,由容器管理对象生命周期 对象创建与依赖关系解耦
一站式 涵盖了持久层、Web 层、业务层等完整解决方案 全栈覆盖,一站式搞定
集成能力 无缝集成 MyBatis、Hibernate、Dubbo 等主流框架 生态强大,兼容性极佳
相关推荐
woxihuan1234568 小时前
SQL删除数据时存在依赖关系_设置外键级联删除ON DELETE
jvm·数据库·python
Jetev9 小时前
如何确定SQL字段是否为空_使用IS NULL与IS NOT NULL
jvm·数据库·python
m0_702036539 小时前
mysql如何处理不走索引的OR查询_使用UNION ALL优化重写
jvm·数据库·python
2401_846339569 小时前
MySQL在云环境如何选择存储类型_SSD与高性能云盘配置建议
jvm·数据库·python
zhaoyong22210 小时前
SQL如何统计每个用户的首次行为时间_MIN聚合与分组
jvm·数据库·python
2501_9010064711 小时前
C#怎么实现配置热更新 C#如何在运行时动态刷新配置文件不需要重启程序【技巧】
jvm·数据库·python
m0_4708576411 小时前
HTML怎么创建响应式图片备选方案_HTML srcset与sizes结构【详解】
jvm·数据库·python
2301_7950997412 小时前
如何优化SQL中大批量数据的物理删除_分批次与间隔控制
jvm·数据库·python
2301_8125396712 小时前
CSS如何引入CSS形状生成器_通过自定义属性实现图形化样式
jvm·数据库·python
m0_6091604913 小时前
Golang怎么实现数据库连接重试_Golang如何在启动时重试连接直到数据库就绪【技巧】
jvm·数据库·python