牛客算法学习2


title: 牛客算法学习2
date: 2019-07-28 19:34:47
categories:

  • 算法
    tags:

part2

队列

一个特殊的栈

在实现栈的基本功能的基础上,再实现返 回栈中最小元素的操作。
1.pop、push、getMin操作的时间复杂度都是O(1)。
2.设计的栈类型可以使用现成的栈结构

栈和队列的转换实现

用栈实现队列

因为栈是先进后出的, 假设现有push栈, 先创建一个辅助栈pop逆序存入push中的值, 只需要弹出pop栈顶的值即可, 只有当pop栈为空的时候才存入push中所有的数据, 而且必须一次性存入.

用队列实现栈

队列是先进先出的, 假设有队列queue, 创建一个辅助队列help, 当需要弹出时, 首先将queue弹出到只剩一个值, 并且将弹出的值依次放入help中, 这时候queue中剩下的数据就是最后进来的那个数据, 弹出即可. 此时help中还是维持着queue中原来的顺序, 而queue队列已经空了, 只需要将help与queue队列互换一下就可以了.

猫狗队列

哈希

哈希函数

哈希函数的输入认为是无穷的, 而输出是有限的

相同的输入, 一定是相同的输出 same input same output

不同的输入也可能导致相同的输出 dif input maybe same output, 这就叫哈希碰撞

离散性, 整个S域上基本均匀分布.

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值