首页 考试吧论坛 Exam8视线 考试商城 网络课程 模拟考试 考友录 实用文档 求职招聘 论文下载 | ||
2011中考 | 2011高考 | 2012考研 | 考研培训 | 在职研 | 自学考试 | 成人高考 | 法律硕士 | MBA考试 MPA考试 | 中科院 |
||
四六级 | 职称英语 | 商务英语 | 公共英语 | 托福 | 雅思 | 专四专八 | 口译笔译 | 博思 | GRE GMAT 新概念英语 | 成人英语三级 | 申硕英语 | 攻硕英语 | 职称日语 | 日语学习 | 法语 | 德语 | 韩语 |
||
计算机等级考试 | 软件水平考试 | 职称计算机 | 微软认证 | 思科认证 | Oracle认证 | Linux认证 华为认证 | Java认证 |
||
公务员 | 报关员 | 银行从业资格 | 证券从业资格 | 期货从业资格 | 司法考试 | 法律顾问 | 导游资格 报检员 | 教师资格 | 社会工作者 | 外销员 | 国际商务师 | 跟单员 | 单证员 | 物流师 | 价格鉴证师 人力资源 | 管理咨询师考试 | 秘书资格 | 心理咨询师考试 | 出版专业资格 | 广告师职业水平 驾驶员 | 网络编辑 |
||
卫生资格 | 执业医师 | 执业药师 | 执业护士 | ||
会计从业资格考试(会计证) | 经济师 | 会计职称 | 注册会计师 | 审计师 | 注册税务师 注册资产评估师 | 高级会计师 | ACCA | 统计师 | 精算师 | 理财规划师 | 国际内审师 |
||
一级建造师 | 二级建造师 | 造价工程师 | 造价员 | 咨询工程师 | 监理工程师 | 安全工程师 质量工程师 | 物业管理师 | 招标师 | 结构工程师 | 建筑师 | 房地产估价师 | 土地估价师 | 岩土师 设备监理师 | 房地产经纪人 | 投资项目管理师 | 土地登记代理人 | 环境影响评价师 | 环保工程师 城市规划师 | 公路监理师 | 公路造价师 | 安全评价师 | 电气工程师 | 注册测绘师 | 注册计量师 |
||
缤纷校园 | 实用文档 | 英语学习 | 作文大全 | 求职招聘 | 论文下载 | 访谈 | 游戏 |
第 1 页:3.1排序算法 |
第 15 页:3.2查找算法 |
u 散列表的查找
散列表又称杂凑表,是一种非常实用的查找技术。它的原理是在结点的存储位置和它的关键码间建立一个确定的关系,从而让查找码直接利用这个关系确定结点的位置。其技术的关键在于解决两个问题。
I. 找一个好的散列函数
II. 设计有效解决冲突的方法
常见的散列函数有:
I. 质数除取余法
II. 基数转换法
III. 平方取中法
IV. 折叠法
V. 移位法
常见的解决冲突的方法有:
I. 线性探查法
II. 双散列函数法
III. 拉链法
假设HASH表的地址集为0-n-1,冲突是指由关键字得到的HASH地址的位置上已经存在记录,则处理冲突就是为该关键字的记录找到另一个空的HASH地址用于存放。
处理冲突的方法:
开放地址法(线性探查法):二次地址=(一次地址+增量序列) MOD 散列表长度M
再HASH法(双散列函数法):使用不同的散列函数计算,互相作为补偿;
二次地址=RH(key) R和H都是散列函数
拉链法(链地址法):设立一个指针数组,初始状态是空指针,HASH地址为i的记录都插入到指针数组中第i项所指向的链表中,保持关键字有序。
建立一个公共的溢出区:将所有冲突的关键字和记录都添入到溢出区。
HASH查找分析: HASH的查找长度与查找表的长度无关,只与装添因子有关
装添因子=表中添入的记录数/HASH的长度
4. 重点、难点解析
数据结构的相关知识点在软考中是经常出现的,无论是上午的客观题,还是下午的程序填空,都会涉及,而且考试的题型除了一般的概念和常识以外,还涉及各种算法,出题十分灵活。因此对这部分的复习一定要非常重视。这里我们总结了数据结构部分的一些比较重要的要点。
n 链式存储结构
不管是线性表、栈,还是队列,都会使用链式存储结构。对于链式存储结构的操作与顺序存储结构不一样,因此我们需要熟悉它们的相关算法。如:
u 对于链式存储的线性表,它的插入、删除和查找算法。
u 对于链接存储栈,它的进栈、出栈算法
u 对于链接存储队列,它的进队、出队算法
另外,对于栈和队列的一些实际应用的算法也需要关心,特别在下午的程序填空的考试中,经常会碰到类似的算法。
关于图的概念和相关算法很多,这对高程软考来说,也是一个重点。
除了我们前面罗列的一些关于的图的基本概念以外,首先我们必须对图的几种存储结构要十分的清楚,因为这实际上是研究图的相关问题和算法的基础。包括:
u 邻接矩阵
u 邻接表
u 十字链表
u 邻接多重表
对于图的两种遍历算法(深度优先和广度优先)实际可以参考树的有关遍历算法,这样理解起来相对简单。
而对于图的有关算法,如求最小代价生成树、求最短路径、拓扑排序和求关键路径等,这是数据结构中的难点。不过一般来说,软考中很难直接考到。因此,大家在复习的时候主要抓住涉及算法的相关概念、算法的基本原理以及算法的复杂度这几个方面。当然,有时间最好参看一下相关资料,对它的具体实现仔细看看,这对理解其算法的核心思想当然会事半功倍。
相关推荐:2010年软件水平考试软件设计师专题讲义汇总北京 | 天津 | 上海 | 江苏 | 山东 |
安徽 | 浙江 | 江西 | 福建 | 深圳 |
广东 | 河北 | 湖南 | 广西 | 河南 |
海南 | 湖北 | 四川 | 重庆 | 云南 |
贵州 | 西藏 | 新疆 | 陕西 | 山西 |
宁夏 | 甘肃 | 青海 | 辽宁 | 吉林 |
黑龙江 | 内蒙古 |