![](https://img-blog.csdnimg.cn/20201014180756919.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
算法和数据结构
文章平均质量分 78
huaye502
这个作者很懒,什么都没留下…
展开
-
排序算法之插入排序、归并排序、快速排序
我的算法基本功太差了,有必要进行练习,就用经典算法——排序和搜索,来试试吧。以下是插入排序和归并排序:#ifndef SomeSort_H #define SomeSort_H #include using namespace std; /********************************************************** ******以下算法都是非降序排列(或者统称为升序排列)********* ******基本原则是:原地重排************原创 2011-05-01 23:15:00 · 680 阅读 · 0 评论 -
二分搜索算法
二分搜索算法是计算机程序设计中的基础算法,1946年第一篇二分搜索算法的论文发表,第一个正确的算法实现是在1962年,中间相隔16年,这一事实令人深思。据了解训练有素的程序员仅有10%的人能够在数小时内写出完全正确的代码实现。因此,我也进行了尝试。现将实现如下贴出,不能保证完全正原创 2011-08-02 21:08:15 · 702 阅读 · 1 评论 -
排序算法小小总结
比较排序:排序结果中个元素的次序基于输入元素间的比较。这列排序称为比较排序。O(logn) 稳定性:所有相等的数经过排序后,仍能保持它们在排序之前的相对次序,称为稳定排序。否则,称为非稳定排序。 内排序:排序过程中所有需要排序的数都在内存,并在内存中调整他们的存储顺序。 外原创 2011-08-04 22:01:18 · 461 阅读 · 0 评论 -
Shell排序
算法思想:先比较距离远的元素,而不想简单交换排序算法那样先比较相邻的元素。这样可以快速减少大量的无序情况,从而减轻后续工作。被比较的元素之间的距离之间的距离逐步减少,直到减少为1,这时排序变成了相邻元素的互换。 Shell排序是比较排序,时间复杂度O(n^a),1原创 2011-08-05 17:37:50 · 591 阅读 · 0 评论 -
散列数据结构C++描述
散列表——一种动态集合结构,它仅支持Insert,Search和Delete操作 基本规则:关键字key,index=fun(key),T[index]卫星数据,函数fun即散列函数。 查找一个元素的期望时间为O(1) 直接寻址表:关键字全域比较小,使用数组完全存储原创 2011-08-09 16:35:44 · 2685 阅读 · 0 评论