由于没考虑到一些情况,对以上一些算法做了改进和对比!以及昨晚把希尔排序写错而误以为其效率高过快速排序的糗事,今天一一做了更正和说明,如果你绝得本随笔不是很妥可以尝试看看这http://www.cnblogs.com/maxiaofang/p/3382927.html,有错误或不妥欢迎指正!!共同学习 ...
分类:
编程语言 时间:
2019-04-11 14:51:43
阅读次数:
167
排序算法可以说是一项基本功,解决实际问题中经常遇到,针对实际数据的特点选择合适的排序算法可以使程序获得更高的效率,有时候排序的稳定性还是实际问题中必须考虑的,这篇博客对常见的排序算法进行整理,包括:插入排序、选择排序、冒泡排序、快速排序、堆排序、归并排序、希尔排序、二叉树排序、计数排序、桶排序、基数 ...
分类:
编程语言 时间:
2019-04-06 17:10:00
阅读次数:
146
一.几种排序思想 1.交换排序:冒泡排序与快速排序 冒泡排序: 思想:比较相邻元素,违反排序顺序则交换,每次冒出一个最大值,直到所有相对的最大值冒出,完成排序。 最基本的排序,不必多说。 复杂度:最坏:O(n*n);最好:O(n);O(n*n)。 快速排序: 思想: 通过一趟排序将要排序的数据分割成 ...
分类:
编程语言 时间:
2019-04-05 00:45:33
阅读次数:
211
浏览器工作原理详解 原贴地址不详 .. 浏览器工作原理详解 原贴地址不详 .. 浏览器工作原理详解 浏览器工作原理详解 原贴地址不详 .. 原贴地址不详 .. 这篇文章是以色列开发人员塔利·加希尔的研究成果。她在查阅了所有公开发布的关于浏览器内部机制的数据,并花了很多时间来研读网络浏览器的源代码。她 ...
分类:
其他好文 时间:
2019-04-04 09:54:30
阅读次数:
150
算法4 1.排序 选择排序: 每次获取最大的数,交换位置 插入排序: 把数字插入有序数组中 希尔排序: 有间隔并且间隔递减的 归并排序: 归并: 两个有序数组的合并成新的有序数组 ... ...
分类:
编程语言 时间:
2019-04-01 10:25:48
阅读次数:
135
同学们TQL。佩服 "李长兴" 同学的超神瓜皮思维。 一、 "飞虎队(希尔密码)" 本题是我今天大部分时间的花费处。先百度学习了希尔密码,然后尝试手动计算逆矩阵和矩阵乘法,还求助于线性代数课本,可谓苦不堪言。 做题千万条,数学第一条。线代学不好,老师两行泪。 简要介绍希尔密码 希尔密码是以矩阵的线性 ...
分类:
其他好文 时间:
2019-03-30 23:56:53
阅读次数:
486
前言 上一篇写了 "数据结构之二叉搜索树、AVL自平衡树" ,这次来写堆。 堆的创造者 很久以前排序算法的时间复杂度一直是O(n^2), 当时学术界充斥着 “排序算法不可能突破O(n^2)” 的声音,直到1959年,由D.L.Shell提出了一种排序算法,希尔排序(Shell Sort),才打破了这 ...
分类:
编程语言 时间:
2019-03-25 09:14:17
阅读次数:
198
常用的内部排序方法有:交换排序(冒泡排序、快速排序)、选择排序(简单选择排序、堆排序)、插入排序(直接插入排序、希尔排序)、归并排序、基数排序(一关键字、多关键字)。 一、冒泡排序: 1.基本思想: 两两比较待排序数据元素的大小,发现两个数据元素的次序相反时即进行交换,直到没有反序的数据元素为止。 ...
分类:
编程语言 时间:
2019-03-20 13:01:40
阅读次数:
263