当前位置: 首页 > news >正文

珍爱网建设网站的目的搜索引擎营销方法

珍爱网建设网站的目的,搜索引擎营销方法,现在还有用dw做网站,有没有人做网站本篇将详细讲一下以下排序算法#xff1a; 直接插入排序希尔排序选择排序快速排序归并排序计数排序 排序的概念 排序#xff1a;所谓排序#xff0c;就是使一串记录#xff0c;按照其中的某个或某写关键字的大小#xff0c;按照递增或递减0排列起来的操作。 稳定性的概念…本篇将详细讲一下以下排序算法 直接插入排序希尔排序选择排序快速排序归并排序计数排序 排序的概念 排序所谓排序就是使一串记录按照其中的某个或某写关键字的大小按照递增或递减0排列起来的操作。 稳定性的概念 假定在待排序的记录序列中存在多个具有相同的关键字的记录若经过排序这些记录的相对次序保持不变。如一下例子 5 2 3 4 5 9 8 经过排序如果红5和蓝5的相对顺序不对这就叫稳定反之则不稳定。 直接插入排序 直接插入排序的思想将待排序的记录按其关键码值的大小逐个插入到一个已经排好序的序列中直到所有的序列为有序序列。 实际中我们玩扑克牌时就用到了这样的一个排序算法。 时间复杂度  直接插入排序时一个稳定的排序如果有相同的元素它们的相对位置不会发生变化。它时间复杂度最好的情况下是ON,当一个数插入到已经排好序的序列中只需要比较一次就好了。 最坏情况ON^2 在完全逆序的情况下要排升序。 希尔排序  希尔排序其实和插入排序很像只不过希尔排序的思想是先预排序最后插入排序。 预排序的意义在哪里 大的数更快到后面去小的数更快到前面去。gap越大跳的越快越不有序当gap 1 时就是插入排序。 时间复杂度 希尔排序的时间复杂度大约为ON^1.3  选择排序 选择排序的思想选择排序可以在一次查找中找到最大的数和最小的数然后把最大的数放到最后最小的数放到最前面。 时间复杂度 时间复杂度是ON^2 稳定性差  快速排序 快排思想说到排序或多或少都听过快速排序快速排序是Hoare于1962年提出的一种二叉树结构的交换方法其基本思想为任取待排序元素序列中的某个元素作为基准值按照该排序吗将待排序集合分割成2个子序列左序列小于keyi值右序列大于keyi值然后重复此方法最后拍完序。 快速排序一次可以确定一个值在正确的位置上。这个值就是key值 if (begin end){return;}int left begin, right end;int keyi left;while (left right){//先让右边先走while (leftright a[right]a[keyi]){--right;}while (left right a[left] a[keyi]){left;}Swap(a[left], a[right]);}Swap(a[keyi], a[left]);keyi left;//[begin,keyi-1] keyi [keyi1,end]QuickSort(a,begin,keyi-1);QuickSort(a,keyi1,end); 最常见的就是上面的递归代码这是Hoare的一种方式实现快排。 Hoare思想让基准值的右边先走直到找到比基准值小的数然后让左边走直到找到比基准值大的数然后交换最后leftright相等的时候将left位置的值与基准值交换。这样就实现了一次排序。 这里我们想一想快速排序为什么要让基准值的对面开始 挖坑法 用一个tmp记录第一个值的坑位让右边先走直到找到比坑位小的数然后让a[right]赋值给坑位然后把坑位给给right继续让左边先走直到找到比坑位大的数然后把值赋给坑位让坑位给给left一直循环。 前后指针法让prev指向key值cur指向key值之后的一个值当a[cur] a[key] 的时候就让prev和cur交换然后一直循环。 快排的非递归 快排的思想其实不难发现像一个栈后进先出因为快排每次可以确定一个基准值的位置所以第一次push进left和right让他们进行一次排序就接着push进right和keyi1再push进keyi-1和left注意顺序因为快排的中间也是一个后进先出的思想。 快排的缺点 快排其实是有缺点的因为快排的时间复杂度不一定是O(N*logN如果排升序给一个倒序的序列就有可能达到O(N^2)。所以有了这么一个缺点就可以做一个三数区中的优化其实Sort函数中也有这样的处理而且Sort中还优化了一次快排递归深度过深的时候会用堆排序在接近有序的时候会用插入排序而且Sort中只对了右边进行递归处理。如果有兴趣可以去了解一下Sort的源码里面有详细解释。 归并排序 归并排序它是建立在归并操作上的一种有效的排序算法该算法采用了分治的思想。将已有序的子序列合并得到完全有序的序列即先使每个子序列有序再使子序列段有序。若将两个有序表合并成一个有序表称为二路归并。         归并排序可以看出是一个后序的排序 先递归然后从前面开始排好序然后再memcpy到原数组。 归并排序其实用在解决磁盘外的外排序问题中如果有下面的场景归并排序就起到了很大的作用。 时间复杂度 归并排序也是一种经典的O(N*logN)  空间复杂度是O(N),这时因为开辟了一块tmp临时数组 计数排序  思想计数排序又称为鸽巢原理是对哈希直接定址法的变形应用。 步骤1.统计想相同元素出现的次数 2.根据统计的结果将序列回收到原来的序列中 计数排序的特性 计数排序在数据范围集中时效率很高但是使用范围及场景有限。时间复杂度O(MAX(N,范围))空间复杂度O(范围)
http://www.tj-hxxt.cn/news/229071.html

相关文章:

  • 实实通信的视频网站怎么做uc网页浏览器网页版
  • 个人网站建设培训wordpress id开发者
  • 有了云服务器怎么建设网站中国工商黄页
  • 常用的网站建设技术有什么软件坦桑尼亚网站域名后缀
  • 如何免费建立官方网站正规淘宝店铺交易平台
  • 网站可以给pdf做笔记名者观看网站
  • 郑州网站建设伟置做网站资料准备
  • 广西免费网站制作北京网站建设工作室
  • 可以看女人不易做网站学习网站开发技术
  • 网站开发是培训传奇网页游戏哪个好玩
  • 电商网站首页模板设计类电子书网站
  • 品牌网站建是啥中信银行官网
  • 如何做网站导航栏的seo优化精准软件
  • 相亲网站怎么建设百度sem竞价托管公司
  • 管理网站建设公司好吗做网站需要了解什么软件
  • 手机网站制作平台有哪些池州网站优化
  • 网站建设服务案例科技让生活更美好作文600字
  • 免费logo网站wordpress文章到qq群
  • 游仙建设局官方网站上海商业网站建设费用
  • 个人网站的设计师html进入网页自动播放音乐
  • 公司做网站需要哪些步骤相亲网站的女人 做直播的
  • 建设部指定发布招标信息网站qq群引流推广平台
  • 英文商城网站建设医院网站模板
  • 网站性能优化的方法有哪些dw网页制作模板素材
  • 在哪个网做免费网站好企业门户网站建设方案书
  • dart 网站开发河北网站设计成功柚米科技
  • 博罗做网站哪家强网站打开风险怎么解决
  • 网站标题如何修改老板电器分销系统
  • 合肥网站建设-中国互联做联轴器的网站
  • wordpress单页面网站怎么做济南网站建设方案详细