C语言链表详解

qingchuan 数据结构 1,145 次浏览 ,
本文摘自wikipedia。本文内容是关于:C语言链表详解,c语言链表教程。 链表(Linked list)是一种常见的基础数据结构,是一种线性表,但是并不会按线性的顺序存储数据,而是在每一个节点里存到下一个节点的指针(Pointer)。 单链...

KD树/K-D树

qingchuan 数据结构 1,586 次浏览
本文理解翻译自:http://en.wikipedia.org/wiki/K-d_tree k-d树(k-d tree) 来自维基百科,自由的百科全书 简介 k-d树是二叉树的一种,树中每个节点都是一个多维(k-dimension)的数据点。每个非叶子节点都可以看做是隐含的...

优先队列(priority_queue)的C语言实现(原创)

qingchuan 数据结构 1,745 次浏览
优先队列(priority_queue)和一般队列(queue)的函数接口一致,不同的是,优先队列每次出列的是整个队列中 最小(或者最大)的元素。 本文简要介绍一种基于数组二叉堆实现的优先队列,定义的数据结构和实现的函数接口说明如下: ...

并查集的数组实现(C++) (原创)

qingchuan 数据结构 1,752 次浏览
摘要:本文简要介绍了并查集的基本原理,并且给出了简单易于理解的数组实现。本文给出的实现方法 使用数组而不是通用的树结构,是为了方便对并查集的理解,其合并的时间复杂度是O(N),不适合高效 的应用。高效的并查集实现请...

并查集的树形实现(C++)(原创)

qingchuan 数据结构 1,595 次浏览
摘要:本文介绍了通用并查集的树形实现,通过压缩路径和维持数的平衡,可以保证 查找和合并的平均时间复杂度为O(1)! 关键字:并查集,UnionFind,树形 并查集基本知识参见博文《并查集的数组实现》。在并查集的树形实现中,...

数据结构与算法的可视化(经典摘录)

qingchuan 数据结构 1,461 次浏览
美国旧金山大学计算机科学系(Computer Science,University of San Francisco)的 David Galles 教授 将一些常用的数据结构和算法进行了可视化处理,也就是将数据结构和算法做成了动画效果,这给我们提供了 一种能够直观理解数...

二叉搜索树(BST)的实现(C语言)(原创)

qingchuan 数据结构 1,643 次浏览 ,
叉搜索树(Binary Search Tree)的一般形式如下图所示,每个节点中的元素大于它的左子树中的所有元素,小于它的右子树中的所有元素。对该图中的二叉树进行中序遍历得到一个从小到大排列的有序序列。       本文...

线段树的实现[C语言](原创)

qingchuan 数据结构 1,539 次浏览
线段树也是一种二叉树,只不过它的节点用来表示一个区间,其特征是将当前区间二分后分别作为左右孩子节点 的区间,如下图(来自百度图片)所示: 线段树在处理区间覆盖问题时,比较有用处,它支持的基本操作如下: 1)  ...

队列的C语言实现(原创)

qingchuan 数据结构 1,563 次浏览
使用链表实现的队列,源码用C语言编写,VC6.0编译。代码有三个文件,其中cqueue.h是队列数据结构和函数接口的声明,cqueue.c是队列函数的定义,main.c是队列测试文件。 /* * File: cqueue.h * Purpose: implementation of queue in...

栈的C语言实现(原创)

qingchuan 数据结构 1,675 次浏览 , ,
使用单链表实现的栈,源码用C语言编写,VC6.0编译,分为三个文件,cstack.h是栈的数据结构和函数接口声明,cstack.c是栈的函数的定义,main.c是栈的测试文件。 /* * File: cstack.h * Purpose: implementation of stack in c * Au...

BitSet(位图、位集、位域)的C语言实现(原创)

qingchuan 数据结构 1,689 次浏览 ,
在处理大数据量问题时,用BitSet做标记处理,可以节约内存空间。BitSet的中文翻译有位图、位集、位域等,个人觉得位图比较合适,下文中将以位图作为BitSet的名称。 实现位图的基本思想是,分配一块连续的内存空间,对每一个字节(...
Go