数据结构
文章平均质量分 91
专门分析数据结构的学习
呼啦啦啦啦啦啦啦啦
一直在学习,现在是小白,未来是大大白
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
常见的排序算法
例如,当数组中多数元素相同时,传统快排会将数组划分为 “小于基准” 和 “大于基准” 两部分,但重复元素会被多次处理,导致时间复杂度退化至 O (n²)。,尤其是对排序速度要求高且可接受不稳定排序的场景(如编程语言内置排序函数、日常业务数据排序)。:对插入排序的优化,通过分组(步长)减少元素移动次数,逐步缩小步长至 1。(如优先级队列、Top K 问题),或对时间复杂度稳定性要求极高的场景。:每次从剩余元素中找到最小(大)值,放到已排序序列的末尾。,或对排序稳定性要求严格的业务(如数据库查询结果排序)。原创 2025-08-18 13:35:52 · 820 阅读 · 0 评论 -
【Java】HashMap的详细介绍
扩容过程中,节点会从旧数组迁移到新数组,头插法在迁移时会反转链表顺序(例如旧链表 A→B,迁移后新链表变为 B→A)。若此时有多个线程同时操作,可能出现节点引用相互指向的情况(如 A.next = B 且 B.next = A),形成环形链表。后续查询时,线程会陷入无限循环,导致 CPU 占用飙升。原因是:数组容量小时,扩容成本低,通过扩容可分散元素,减少冲突;基于泊松分布,当负载因子为 0.75 时,链表长度自然增长到 8 的概率极低(约千万分之一),此时说明哈希冲突异常频繁,需要转为红黑树优化。原创 2025-08-15 14:56:47 · 1618 阅读 · 25 评论 -
Java刷题常见的集合类,各种函数的使用以及常见的类型转化等等
Java刷题常见的集合类,各种函数的使用以及常见的类型转化等等原创 2024-12-04 14:09:00 · 8023 阅读 · 104 评论 -
反射、枚举以及lambda表达式--Java
本章主要介绍反射、枚举以及lambda表达式的功能以及如何使用。原创 2024-11-03 15:32:20 · 1144 阅读 · 16 评论 -
【数据结构】时间和空间复杂度
关于时间和空间复杂度的了解原创 2023-11-24 23:49:49 · 1547 阅读 · 94 评论 -
手把手教你如何实现List——ArrayList
详解顺序表原创 2023-11-28 23:22:47 · 4650 阅读 · 118 评论
分享