数据结构算法
文章平均质量分 85
主要用于分享数据结构算法中算法设计思想以及代码的实现
Couchy_wu
发际线越来越高,能力却不见增长的菜鸡程序猿
展开
-
SkipList的原理与实现
简介SkipList(跳表)这种数据结构是由William Pugh于1990年在在Communications of the ACMJune 1990, 33(6) 668-676 发表了Skip lists: a probabilistic alternative to balanced trees,在其中详细描述了他的工作。由论文标题可知,SkipList的设计初衷是作为替换平衡树的一种选择。我们都知道,AVL树有着严格的O(logN)的查询效率,但是由于插入过程中可能需要多次旋转,导致插..原创 2021-10-09 19:40:26 · 390 阅读 · 0 评论 -
快速排序算法的应用
已知由个正整数构成的集合,将其划分为两个不相交的子集和,元素的个数分别是和,和中的元素之和分别为和.设计一个尽可能高效的算法,满足最小且最大。分析:在本题中要求最小且最大,因此我们首先可以想到的最简单直接的方法就是将集合A中的元素从小到大进行排序,然后将前(向下取整)个元素划分在子集中,剩下下的元素放入子集中。这种方法显然是可以的。下面我们来计算上述方法的时间复杂度,因为已知的排序算法中最...原创 2019-08-11 17:20:29 · 541 阅读 · 0 评论 -
快速排序算法思想及其c语言实现
算法思想:快速排序算法主要采用的是分而治之的算法思想,在每次进行快速排序的过程中,都将待排序的数字分为大于枢轴值的部分和小于枢轴值的部分。然后分别对大于部分和小于部分进行快速排序即可,知道待排序的数据元素的个数为1为止,即当low==high时停止。枢轴值的获取:枢轴值的获取,以及如何将待排序数据元素中大于枢轴值的元素和小于枢轴值的元素分居枢轴值的两边,是快速排序的关键。1:对于枢...原创 2019-08-11 16:12:18 · 828 阅读 · 0 评论