数据结构

栈(先进后出的数据结构)的设计与实现

栈(先进后出的数据结构)的设计与实现1.栈的概念在开始前,请牢记这句话:栈是一种先进后出的数据结构。栈(stack)是限定仅在表的一端进行操作的数据结构,请联系我们前文所学的,设想一个单链表我们只能够对其链表的表尾结点进行操作,而操作也……

程序运行时的内存与地址

程序运行时的内存与地址1.理解内存在开始数据结构的正式代码编写之前,我们得先熟悉一个计算机中重要的概念——内存,当然这里不是教你如何选购内存条,这里是介绍数据结构学习中必须要掌握的关于内存的基本概念……

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

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

C++中string字符串类型介绍

C++中string字符串类型介绍1.简介C语言中通过字符相连已经基本创造出了字符串的常规操作,然而,字符串在C语言中并不是常规类型,而是一个类似于数组的结构,在C++中,通过模板类的操作创建了string类,这样的方法更适合于现代的……

C++STL之List容器

C++STL之List容器1.再谈链表List链表的概念再度出现了,作为线性表的一员,C++的STL提供了快速进行构建的方法,为此,在前文的基础上通过STL进行直接使用,这对于程序设计中快速构建原型是相当有必要的,这里的STL……

顺序队列的介绍及C/C++代码实现

顺序队列的介绍及C/C++代码实现1.队列的概念在开始前,请牢记这句话:队列是一个先进先出的数据结构。队列(queue)是限定在表的一端进行插入,表的另一端进行删除的数据结构,如同栈的学习,请联系前文所学链表,试想一个单链表,我们只能……

什么是“并查集” ?

什么是“并查集” ?什么是“并查集”?并查集,是一种可以使用代表元来表示不相交集的数据结构,在一些只需要查询两个元素是否属于同一个集合的情况下它很有用。比如给定一个无向图,判断两个顶点是否属于同一……

C++STL之Map容器

C++STL之Map容器1.简介Map也是一种关联容器,它是键—值对的集合,即它的存储都是以一对键和值进行存储的,Map通常也可以理解为关联数组(associativearray),就是每一个值都有一个键与值一一……

哈希算法实例详解

哈希算法实例详解1.什么是哈希Hash,一般翻译做散列、杂凑,或音译为哈希,是一个典型的利用空间换取时间的算法,把任意长度的输入(又叫做预映射pre-image)通过散列算法变换成固定长度的输出,该输出就是散列值。如……

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

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