1 / 36
文档名称:

数据结构与算法.docx

格式:docx   大小:35KB   页数:36
下载后只包含 1 个 DOCX 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

数据结构与算法.docx

上传人:w447750 2017/10/6 文件大小:35 KB

下载得到文件列表

数据结构与算法.docx

相关文档

文档介绍

文档介绍:数据结构与算法
算法
查找
查看文档:
为了分析实施键比较的算法和性能,我们应该使用键比较次数作为算法所做工作量的度量标准。
顺序查找
平均比较次数为 n(n+1)/2n;
二分查找
一、前置条件
操作对象为有序表。
二、算法描述
between bottom and top
middle = (bottom + top)/2;
if target > middle
 bottom = middle + 1;
 repeat the above process
else
 top = middle;
 repeat the above process
end if

查找树
2-树
二叉查找树
查看文档: 13351072_郑泽丰_11_1\
The plexity of a search, insert, or delete operation is O(logn), while the worst-plexity isO(height) = O(n), where nis number of nodes/elements.
递归实现
用递归的思想实现插入、搜索和删除等操作。
Remove From A Degree 2 Node。Replace with largest key in left subtree (or smallest in right subtree).
数组实现
查看文档: 13351072_郑泽丰_11_2\
链表实现
红黑树
Colored Nodes Definition
•Binary search tree.
•Each node is colored redor black.
•Root and all external nodes are black.
•No root-to-external-node path has two consecutive red nodes.
•All root-to-external-node paths have the same number of black nodes

词典查找树
插值查找
外部查找
B-树
排序
查看文档:
插入排序
查看文档:
算法描述
假定n是数组的长度,
首先假设第一个元素被放置在正确的位置上,这样仅需从1-n-1范围内对剩余元素进行排序。对于每次遍历,从0-i-1范围内的元素已经被排好序,
每次遍历的任务是:通过扫描前面已排序的子列表,将位置i处的元素定位到从0到i的子列表之内的正确的位置上。
将arr[i]复制为一个名为target的临时元素。
向下扫描列表,比较这个目标值target与arr[i-1]、arr[i-2]的大小,依次类推。
这个比较过程在小于或等于目标值的第一个元素(arr[j])处停止,或者在列表开始处停止(j=0)。
在arr[i]小于前面任何已排序元素时,后一个条件(j=0)为真,
因此,这个元素会占用新排序子列表的第一个位置。
在扫描期间,大于目标值target的每个元素都会向右滑动一个位置(arr[j]=arr[j-1])。
一旦确定了正确位置j,
目标值target(即原始的arr[i])就会被复制到这个位置。
与选择排序不同的是,插入排序将数据向右滑动,并且不会执行交换。
效率分析
稳定
空间复杂度O(1)
时间复杂度O(n2)
最差情况:反序,需要移动n*(n-1)/2个元素
最好情况:正序,不需要移动元素
数组在已排序或者是“近似排序”时,插入排序效率的最好情况运行时间为O(n);
插入排序最坏情况运行时间和平均情况运行时间都为O(n2)。
通常,插入排序呈现出二次排序算法中的最佳性能。
对于具有较少元素(如n<=15)的列表来说,二次算法十分有效。
在列表已被排序时,插入排序是线性算法O(n)。
在列表“近似排序”时,插入排序仍然是线性算法。
在列表的许多元素已位于正确的位置上时,就会出现“近似排序”的条件。
通过使用O(nlog2n)效率的算法(如快速排序)对数组进行部分排序,
然后再进行选择排序,某些高级的排序算法就是这样实现的。
数组版
template<class Record>
void Sortable_list<Record>::insertion_sort()
{
int first_unsorted;
int position;
Record current;
for(first_unsorted=1;frst_unsorted

最近更新

小麦高产栽培技术及其在田间管理中科学应用总.. 6页

三维探地雷达在白蚁巢穴探测中的应用分析 6页

2025年元件测试仪项目合作计划书 74页

2025年医护管理通讯装置项目建议书 75页

2025年光纤预制棒项目合作计划书 61页

2025年动态心电图监测系统设备项目建议书 72页

2025年包装设备合作协议书 60页

膜片厚度对压力补偿灌水器水力性能影响模拟研.. 6页

2025年福州黎明职业技术学院单招职业适应性考.. 43页

2025年莱芜职业技术学院单招职业倾向性考试题.. 44页

2025年达州中医药职业学院单招职业倾向性测试.. 43页

2025广东江门市人民医院招聘高层次人才1人考试.. 45页

2025广东茂名市信宜市纪委监委选调公务员3人考.. 49页

2025广西河池市南丹县消防救援大队招7人考试参.. 41页

2025河北衡水中学实验学校教师招聘考试题库附.. 44页

2025湖南长沙水业集团有限公司社会招聘备考题.. 49页

2025贵州贵州清镇经济开发区选聘7人参考题库附.. 49页

2025重庆巴南区文化和旅游发展委员会招聘公益.. 49页

2025黑龙江鹤岗市萝北县残疾人托养中心医护人.. 43页

2026安徽芜湖市无为市公安局专职人民调解员招.. 50页

2026年c语言知识试题word版 13页

2026年C语言考试题库往年题考 13页

2026年上海政法学院单招职业适应性考试题库附.. 43页

2026年江西交通职业技术学院单招职业倾向性考.. 37页

2025年新疆考试录用公务员《公安专业科目》真.. 30页

2025年安徽邮电职业技术学院单招职业技能测试.. 66页

2024年南京信息职业技术学院单招职业技能测试.. 78页

CFG群桩基础土方开挖施工方案 6页

全国大学生智能车大赛作品-智能循迹小车技术文.. 31页

中药配伍禁忌表 6页