在刷题的过程中,有时候会遇到一些数据结构中的一些概念,如果对这些概念理解不清楚,甚至理解有误的话,就很可能把题目做错。所以,专门找出在刷题过程中出现的一些概念,以免考试的时候用到想不起来。

  • 拓扑排序

  1. 每个顶点出现且只出现一次

  2. 若顶点A在序列中排在顶点B的前面,则在图中不存在从顶点B到顶点A的路径。

  或者定义为:拓扑排序是对有向无环图的一种排序,它使得若存在一条从顶点A到顶点B的路径,则在排序中顶点B出现在顶点A的后面。

  例题:1146 Topological Order


  • 散列表的冲突处理方法(开放寻址法)

  数学递推公式: Hi = (H(key) + di) % m.

  1. 线性探测法

  当di = 0, 1, 2, 3, 4……, m - 1时,称为线性探测法。这种方法的特点是当冲突发生时,顺序查看表中的下一个单元,直到找到一个空闲单元,或者遍历全表。

  2. 平方探测法

  当di = 0, 1, -1, 4, -4, 9, -9……时,称为平方探测法。散列表的长度必须是一个能够表示成4k + 3的素数。这种方法能够避免出现堆积效应,但是不能够遍历表中的所有单元,至少能够探测到一半的单元。

  3. 再散列法

  运用两个散列函数,当一个散列函数产生冲突时,则利用第二个散列函数计算地址增量,具体的函数形式如下所示:

  Hi = (H(Key) + i * Hash2(key)) % m

  4. 伪随机序列法

  当di为伪随机序列的时候,称为伪随机序列法。

 

  例题:1145 Hashing - Average Search Time

PAT归纳总结——一些容易记混的概念的更多相关文章

  1. 一些容易记混的c++相关知识点

    一些容易记混的c++相关知识. 截图自:<王道程序员面试宝典>

  2. PAT甲级满分攻略|记一次考试经历

    一次考试经历 今天是"大雪",很冷. 来到隔壁的学校考试,记得上一次来河中医是两年前大一刚开学吧,那天晚上印象比较深刻,6个室友骑车到处闲逛.当时还不会Hello world. 很 ...

  3. PAT归纳总结——关于图的一些总结

    在刷题的过程中经常会碰到一些关于图论的问题,下面我将根据自己刷题的经验来对这些问题做一个总结. 图的表示方法 解决图论中的问题首先要解决的问题就是图的表示方法这一问题,图的表示方法主要有两种,一种使用 ...

  4. PAT归纳总结——关于模拟类问题的一些总结

    关于时间的模拟问题 在刷题的过程中碰到了一些关于时间先后顺序的模拟题目,刚开始做的时候确实挺麻烦的,今天把这类问题的解题思路来整理一下. 比较典型的有: 1017 Queueing at Bank 1 ...

  5. PAT归纳总结——关于二叉树的一些总结

    今天是6月26日到下个月的这个时候已经考过试了,为了让自己考一个更高的分数,所以我打算把PAT的相关题型做一个总结.目前想到的方法就是将相关的题型整理到一起然后,针对这种题型整理出一些方法. 二叉树的 ...

  6. mark一下总是记混的重定向与转发的区别

    forward内部跳转 和redirect重定向跳转的区别 1).从地址栏显示来说  forward是服务器请求资源,服务器直接访问目标地址的URL,把那个URL的响应内容读取过来,然后把这些内容再发 ...

  7. java链接数据库构建sql语句的时候容易记混的地方

    Connection conn = DBHelper.getconnection(); //封装连接数据库的工具类 String sql = "select * from t_test&qu ...

  8. maven一些简单常用却容易记混的命令参数-U -e -B

    install 命令完成了项目编译.单元测试.打包功能,同时把打好的可执行jar包(war包或其它形式的包)布署到本地maven仓库,但没有布署到远程Maven私服仓库: deploy 命令完成了项目 ...

  9. PAT归纳总结——关于C++输入输出格式问题的一些总结

    自从使用了C++就不再想使用C语言来刷题了,C++便捷的输入输出方式,以及一些STL库函数的使用都要比使用C语言方便的多.但是使用的时候还有一些需要注意的地方,在这篇博客中写一下.(更好的教程可以参看 ...

随机推荐

  1. 微信小程序滚动条设置

    隐藏滚动条 ::-webkit-scrollbar { width: 0rpx; height: 0rpx; background-color: transparent; } 其实设置为宽高为 0 或 ...

  2. 破解MySQL库user表hash密码

    目录 得到用户名和密码 hash 带*和不带*的区别 破解hash 在线工具 Hashcat 实验环境 select version(); 得到用户名和密码 hash mysql安装好就会默认生成图中 ...

  3. C++类的友元机制说明

    下面给出C++类的友元机制说明(对类private.protected成员访问),需要注意的是,友元机制尽量不用或者少用,虽然它会提供某种程度的效率,但会带来数据安全性的问题. 类的友元 友元是C++ ...

  4. PAT-1043(Is It a Binary Search Tree)JAVA实现

    Is It a Binary Search Tree PAT-1043 主要涉及到根据前序遍历序列片段是否是一颗二叉树,这里有一个小tip就是插入序列就是二叉树的前序遍历序列. 第二个是会对排序二叉树 ...

  5. Linux发行版及其目标用户

    1.Debian Debian 众所周知,是Deepin,Ubuntu和Mint等流行Linux发行版的母亲,这些发行版提供了可靠的性能,稳定性和无与伦比的用户体验.最新的稳定发行版是Debian 1 ...

  6. ASP.NET Core 在 .NET 6 Preview 2 中的更新

    原文:<ASP.NET Core updates in .NET 6 Preview 2>,作者 Daniel Roth .NET 6 预览版 2 现已推出,其中包括许多对 ASP.NET ...

  7. WorkSkill整理之 技能体系

  8. Codeforces Round #545 B. Circus

    题面: 传送门 题目描述: 马戏团中一共有N个人(N是偶数),有的人会扮演小丑,有的人会表演杂技.给出每个人会什么,然后按照下列规则把这些人分成两组: 每个人只能在其中一组 两个组的人数相等(也就是把 ...

  9. visualvm工具远程对linux服务器上的JVM虚拟机进行监控与调优

    文/朱季谦 最近在做了一些JVM监控与调优的事情,算是第一次实践,还比较陌生,故而先把这一次经验简单记下笔记,这样,对后面学习调优方面时,不至于又想不起来了.本文档主要总结在window本地环境远程对 ...

  10. Typora常用编辑方法-一个能将写博客变作享受的工具

    1,标题 ctrl+数字(1~5) 2,序号 数字序号 数字 + . +空格,之后回车换行会自动产生数字序号 非数字序号 有三种 实心圆 ,非实心圆与实心方框 都是 +空格 ,之后按tab键向内缩进, ...