20162322 2017-2018-1 <程序设计与数据结构>第五.六周学习总结 教材学习内容总结 集合的介绍(总述) 集合是收集并组织其他对象的对象.主要分为线性集合(集合中的元素排成一行)和非线性集合(按不同于一行的方式来组织元素). 决定因素:加入集合的次序.元素之间的固有关系. 抽象数据类型 抽象 封装 抽象数据类型(abstract data type, ADT) 数据结构 我们研究数据结构就是研究其逻辑结构.物理结构及数据运算. 逻辑结构:本周我们学习的栈和队列均属于线性结构.…
20162322 2017-2018-1 <程序设计与数据结构>第十一周学习总结 教材学习内容总结 哈希方法 一.定义 哈希:次序--更具体来说是项在集合中的位置--由所保存元素值的某个函数或是所保存元素的关键值的某些函数来决定. 冲突:两个元素或关键字映射到表中同一个位置的情形. 理想哈希函数:将每个元素映射到表中的唯一位置的哈希函数. 二.哈希函数 我们的目标不需要哈希函数构成理想哈希函数,而仅仅是寻找一个函数,它能合理地将元素散列到表中以避免冲突. (一)构造哈希函数的方法 1. 抽取:…
集合家族图 ---|Collection: 单列集合 ---|List: 有存储顺序 , 可重复 ---|ArrayList: 数组实现 , 查找快 , 增删慢 ---|LinkedList: 链表实现 , 增删快 , 查找慢 实现了 栈 队列 ---|Vector: 和 ArrayList 原理相同 , 但线程安全 , 效率略低 ---| Stuck 类 ---|Set: 无存储顺序 , 不可重复 ---|HashSet 线程不安全,存取速度快.底层是以哈希表实现的 ---|TreeSet 红…
集合家族图 ---|Collection: 单列集合 ---|List: 有存储顺序 , 可重复 ---|ArrayList: 数组实现 , 查找快 , 增删慢 ---|LinkedList: 链表实现 , 增删快 , 查找慢 实现了 栈 队列 ---|Vector: 和 ArrayList 原理相同 , 但线程安全 , 效率略低 ---| Stuck 类 ---|Set: 无存储顺序 , 不可重复 ---|HashSet 线程不安全,存取速度快.底层是以哈希表实现的 ---|TreeSet 红…
栈 队列 有序队列数据结构的生命周期比那些数据库类型的结构(比如链表,树)要短得多.在程序操作执行期间他们才被创建,通常用他们去执行某项特殊的任务:当完成任务之后,他们就会被销毁.这三个数据结构还有一个特点就是访问是受到限制的,即在特定时刻只有一个数据项可以被读取或者被删除,但是所谓的移除并不是真的删除,数据项依然在这些数据结构中,只不过因为指针已经指向其他数据项,没有办法访问到,当添加新的数据项时,当初移除的数据项被替代从而永远消失. 栈 队列 优先级队列的模拟思想 1.栈:栈遵循先进后出(F…
双栈队列的原理是用两个栈结构模拟一个队列, 一个栈A模拟队尾, 入队的元素全部压入此栈, 另一个栈B模拟队首, 出队时将栈A的元素弹入栈B, 将栈B的栈顶元素弹出 此结构类似汉诺塔, 非常经典, 这里附上C++代码简单实现, 有问题欢迎指出 #include <stack> template <typename T> class CStkQueue { public: T queuePop(); //出队列 void queuePush(T value); //入队列 size_t…
date: 2018-11-25 08:31:30 updated: 2018-11-25 08:31:30 栈&队列&并查集&哈希表(julyedu网课整理) 栈和队列 1.定义 存放数据的线性表 操作:入栈/队列.出栈/队列.判断满/空 空间复杂度:O(n) 单次操作时间复杂度:O(1) 区别 先进后出(FILO, First In Last Out) 先进先出(FIFO, First In First Out) 2.实现 数组和链表皆可(线性表) 指针(辅助变量) 栈顶/底指…
Leetcode栈&队列 232.用栈实现队列 题干: 思路: 栈是FILO,队列是FIFO,所以如果要用栈实现队列,目的就是要栈实现一个FIFO的特性. 具体实现方法可以理解为,准备两个栈,一个栈用作输入栈,入数据就存数据,一个栈用作输出栈,出数据就入数据再弹数据. 代码: class MyQueue { /** * 先声明变量,留在MyQueue方法中进行Init */ Stack<Integer> stackIn; Stack<Integer> stackOut; p…
1.有如下变量,请实现要求的功能 tu = ("alex", [11, 22, {"k1": 'v1', "k2": ["age", "name"], "k3": (11,22,33)}, 44]) 讲述元祖的特性不可变列表 请问tu变量中的第一个元素 "alex" 是否可被修改?不可以 请问tu变量中的"k2"对应的值是什么类型?是否可以被修改?…
Description TonyY 是一个 word 小白,今天他对 word 中撤销和恢复功能特别感兴趣,玩耍了一个上午(mdzz~) ,现在他知道了它们的功能和快捷键:撤销:ctrl+z,可以撤销最近 1 次之前的恢复和 input 操作.恢复:ctrl+y,可以恢复最近 1 次之前的撤销操作,但是 input 操作之前的撤销操作不能被恢复.当然,TonyY 还要往里写东西,操作格式为 input str(长度 m 1=<m<=30) .现在他对 word 玩耍了起来,想知道玩耍完的结果,…