自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(15)
  • 收藏
  • 关注

原创 Trie 树介绍

Trie 树是一个高效的字符串检索数据结构,也叫字典树或前缀树。假设我们要构建一个 Trie 树来存储以下单词:[“cat”, “car”, “cart”, “card”]。Trie 树的结构如下。

2025-01-04 18:34:19 244

原创 Git 在工作中的使用案例

【代码】Git 在工作中的使用案例。

2024-12-29 13:49:34 207

原创 线段树介绍

线段树是一种平衡二叉树,它的每个节点表示一个区间。线段树的根节点表示整个区间,每个节点的左右孩子表示区间的左半部分和右半部分。

2024-12-24 22:36:21 275

原创 希尔排序算法

希尔排序是插入排序的改进版本,它通过比较相距一定间隔的元素来进行排序。

2024-12-21 15:07:25 206

原创 Visual Code 的 Vim 插件极简使用手册

文件 -> 首选项 -> 设置 -> 搜索 vim,向下找到在 setting.json 中添加如下配置。

2024-12-15 12:37:57 738

原创 基于比较的排序算法总结

排序算法最好时间复杂度平均时间复杂度最坏时间复杂度特殊数据时的时间复杂度空间复杂度稳定性应用场景冒泡排序O(n)O(n²)O(n²)O(n),当数据有序时O(1)稳定选择排序O(n²)O(n²)O(n²)O(1)不稳定插入排序O(n)O(n²)O(n²)O(n),当数据有序时O(1)稳定归并排序O(nlogn)O(nlogn)O(nlogn)O(n),当数据有序时O(n)稳定求数组中的逆序对快速排

2024-12-11 21:36:21 245

原创 冒泡排序算法

冒泡排序的主要过程是:对于一个数组,从头到尾依次比较相邻的两个元素,如果前后两个元素存在逆序,则交换这两个元素的位置。n 个元素的数组,需要进行 n-1 轮比较,每一轮比较都会确定一个元素的最终位置。

2024-12-09 07:53:28 374

原创 堆结构介绍

堆一般使用二叉树来表示,堆是一棵完全二叉树。堆有两种类型:最大堆和最小堆。最大堆:每个节点的值都大于或等于其左右子节点的值。最小堆:每个节点的值都小于或等于其左右子节点的值。堆能够快速的获取最大值或最小值。

2024-11-24 20:27:30 308

原创 二叉搜索树

二叉搜索树(Binary Search Tree)是一种基于二叉树的数据结构,它又称为二叉排序树。

2024-11-17 13:33:52 406

原创 归并排序(自顶向下)

归并排序的基本思想是分而治之。首先把待排序的序列拆分为两个子序列,这两个子序列又各自拆分为两个子序列,就这样不断的向下拆分,直到每个子序列只有一个元素。接着开始合并子序列形成一个较长的有序子序列,合并后的子序列又为下一次合并做准备,直到所有子序列都合入到一个整体,所有数据有序。

2024-10-26 11:46:40 197

原创 单链表实现

单链表是一种线性表,它由一系列节点组成,每个节点包含两部分:数据域和指针域。数据域用来存储数据,指针域用来指向下一个节点。

2024-10-19 11:49:56 227

原创 二分查找算法

二分查找是在有序数据中查找目标值的一种高效算法。它的基本思想是:把目标值与查找范围内的中间值比较,如果相等返回该值的在整个序列中的位置。如果不相等,则根据大小关系缩小一半的查找范围,继续查找,直到找到目标值或者查找范围为空。

2024-10-06 16:54:35 343

原创 快速排序算法

三路快速排序是一种改进的快速排序算法,它将数组分成三个部分:小于枢轴的部分、等于枢轴的部分和大于枢轴的部分。这样可以更高效地处理包含大量重复元素的数组。

2024-09-28 21:02:45 275

原创 归并排序(自底向上)

自底向上归并排序是一种非递归排序算法。它首先把待排序的数组拆分为多个长度为 2 的子序列(不足2的部分也作为一个子序列看待),接着对每个子序列进行排序,保证每个子序列内部是有序的,然后在这个基础上把数组拆分为多个长度为 4 的子序列,对每个子序列进行排序,以此类推,每次迭代子序列的长度翻倍,直到子序列长度能覆盖数组长度,最终完成排序。

2024-09-22 17:05:07 267

原创 插入排序算法

插入排序的基本思想是将数组分为已排序和未排序两部分,每次从未排序部分取出一个元素,插入到已排序部分的适当位置。对于小规模数据和基本有序的数据,插入排序是一个高效的排序算法。

2024-09-21 16:40:13 217 1

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除