算法-数据结构
进击的Explorer
学而不思则罔 思而不学则殆
展开
-
队列的定义和算法的实现
与栈相反,队列(queue) 是一种先进先出 (first in first out,缩写为FIFO )的线性表。它只允许在表的一端进行插入,而在另一端删除元素。在队列中,允许插入的一端叫做队尾 (rear),允许删除的一端则称为 队头(front)。1、链队列–队列的链式表示和实现用链表表示的队列简称为链队列 ,一个链队列需要两个分别指示队头和队尾的指针(分别称为头指针和尾指针)才能唯一确定。我们给链队列添加一个头结点,并令头指针指向头结点。因此,空的链队列的判决条件为头指针和尾指针均指向头结点。如下原创 2020-08-29 17:18:27 · 707 阅读 · 0 评论 -
栈的定义和算法的实现
一、栈的定义栈(stack) 是限定仅在表尾进行插入或删除操作的线性表。因此,对栈来说,表尾端有其特殊含义,称为栈顶(top) ,相应地,表头端称为栈底(bottom) 。不含元素的空表称为空栈。假设栈 S=(a1,a2,...,an)S=(a_1,a_2,...,a_n)S=(a1,a2,...,an) ,则称a1a_1a1 为栈底元素,ana_nan 为栈顶元素。栈中元素按a1,a2,...,ana_1,a_2,...,a_na1,a2,...,an 的次序进栈,退栈的第一个元素应为原创 2020-08-25 09:46:06 · 1946 阅读 · 0 评论 -
详谈哈希表
一、基本概念根据设定的哈希函数H(key)H(key)H(key) 和处理冲突的方法将一组关键字映射到一个有限的连续的地址集(区间)上,并以关键字在地址集中的“像”作为记录在表中的存储位置,这种表便称为 哈希表,这一映像过程称为哈希造表 或散列,所得存储位置称哈希地址 或 散列地址。二、哈希函数的构造方式什么是好的哈希函数?若对于关键字集合中的任何一个关键字,经哈希函数映射到地址集合中任何一个地址的概率是相等的,则称此类哈希函数为 均匀的哈希函数 。换句话说,就是使关键字经过哈希函数得到一个“随机的原创 2020-08-18 21:39:28 · 1442 阅读 · 0 评论