数据结构

数据结构基础

数据结构基础1.基本概念和术语1)数据数据(Data)是信息的载体,是可以被计算机识别,存储并加工处理的描述客观事物的信息符号的总称。数据不仅仅包括了整形,浮点数等数值类型,还包括了字符甚至声音,视频,图像等非数……

参考及相关链接

参考及相关链接参考目录:《大话数据结构》      程杰著《数据结构与算法》小黑书,C语言版本《算法与数据……

哈夫曼树的介绍及C语言代码实现

哈夫曼树的介绍及C语言代码实现1.简介哈夫曼树(HuffmanTree),又名:最优二叉树,赫夫曼树其标准含义是:给定N个权值作为N个叶子结点,构造一棵二叉树,若该树的带权路径长度达到最小,称这样的二叉树为最优二叉树,也称为哈夫曼……

顺序队列的基本操作(入队出队遍历)及C/C++代码实现

顺序队列的基本操作(入队出队遍历)及C/C++代码实现1.  入队操作如图,进行入队(push)操作的时候,我们首先需要特判一下队列是否为空,如果队列为空的话,需要将头指针和尾指针一同指向第一个结点,即front=n;……

手指树的基本结构

手指树的基本结构一、简介手指树(FingerTree)是一种纯函数式数据结构,由RalfHinze和RossPaterson提出。二、为什么需要手指树?在函数式编程中,列表是十分常见的数据类型。对于基于序列的操作,包……

折半查找(二分查找)介绍与实现

折半查找(二分查找)介绍与实现1.算法简介二分查找也称折半查找(BinarySearch),多数的人喜欢叫他二分查找。它是一种效率较高的查找方法。但是,折半查找要求线性表必须采用顺序存储结构,而且表中元素按关键字有序排列,注意必须……

C++STL之Set容器

C++STL之Set容器1.简介Set(集合)属于关联式容器,也是STL中最实用的容器,关联式容器依据特定的排序准则,自动为其元素排序。Set集合的底层使用一颗红黑树(可能读者对此不太了解,等但学到树论与图论的章节的时候就会……

双向链表的基本设计(C语言代码实现)

双向链表的基本设计(C语言代码实现)1. 双向链表的简介&概念单链表在很多时候已经可以胜任很多优秀的操作了,但是,单链表任然存在不足,所谓‘单链表’,是指结点中只有一个指向其后继……

用数组实现模拟算法C/C++实现(配例题)

用数组实现模拟算法C/C++实现(配例题)1.概念数组这个概念并不陌生,然而,数组本身也是一种数据结构。数组在存储数据时是按顺序存储的,存储数据的内存也是连续的,所以他的特点就是寻址读取数据比较容易,插入和删除比较困难。简单解释一下为什么,在……