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

网站建设地址 北京做网站图片用什么格式

网站建设地址 北京,做网站图片用什么格式,公司简介模板下载,网络营销试卷及答案快速排序属于交换排序。 算法思想: 快速排序的核心思想是分治法,通过选择一个基准元素(pivot),将序列分为两部分:小于基准的部分和大于基准的部分。然后递归地对这两部分进行排序。 在数组或者顺序存储的序列中,可以…

快速排序属于交换排序。

算法思想:

快速排序的核心思想是分治法,通过选择一个基准元素(pivot),将序列分为两部分:小于基准的部分和大于基准的部分。然后递归地对这两部分进行排序。

在数组或者顺序存储的序列中,可以通过随机访问快速找到任意位置的元素,并通过交换操作高效地完成分区(partition)。然而,链表是顺序访问的数据结构,无法像数组一样高效地支持随机访问和交换操作

在待排序表[1...n]中任取一个元素pivot作为枢轴(或基准,通常取首元素),通过一趟排序将待排序表划分为独立的两部分L[1...k-1]和L[k+1...n],使得L[1...k-1]中的所有元素小于pivot,L[k+1...n]中的所有元素大于等于pivot,则pivot放在了其最终位置L(k)上,这个过程称为一次“划分”。然后分别递归地对两个子表重复上述过程,直至每部分内只有一个元素或空为止,即所有元素放在了其最终位置上。

//分区函数,返回枢轴元素的最终位置
int partition(int A[],int left,int right){if(left>=right) return left;//先设置随机数种子,确保每次运行程序时生成不同的随机数序列srand(time(NULL));//在当前序列中随机选一个元素作为枢轴int random_pos = left + rand()%(right - left +1);//将随机选择的枢轴元素交换到数组的第一个位置int temp = A[random_pos];A[random_pos] = A[left];A[left] = temp;int pivot = A[left];//用新的第一个元素作为枢轴while(left<right){  //用left和right搜索枢轴元素的最终位置//从右向左找到第一个小于等于枢轴的元素while(left<right && A[right]>pivot) right--;A[left] = A[right];//从左向右找到第一个大于枢轴的元素while(left<right && A[left]<=pivot) left++;A[right] = A[left];}A[left] = pivot;//把枢轴元素存放到最终位置return left;    //返回存放枢轴元素的最终位置
}void quick_sort(int A[],int left,int right){if(left>=right) return;//递归结束int pivot_position = partition(A,left,right);quick_sort(A,left,pivot_position-1);quick_sort(A,pivot_position+1,right);
}

总结

算法表现主要取决于递归深度,若每次“划分”越均匀,则递归深度越低。“划分”越不均匀,递归深度越深。

快速排序性质
最好时间复杂度O(nlogn),每次划分很平均
最坏时间复杂度O(n^2),原本正序或逆序
平均时间复杂度O(nlogn)
最好空间复杂度O(logn)每次划分很平均
最坏空间复杂度O(n)
稳定性不稳定
适用性仅适用于顺序表,不适用于链表
http://www.dtcms.com/a/571950.html

相关文章:

  • 免费制作自己的网站长做网站找外包公司要要搞清楚什么
  • ps图做ppt模板下载网站网页制作与网站建设在线作业
  • 做网站平台多少钱产品设计作品集欣赏
  • 济南高新网站建设学校网站建设成功
  • 不花钱可以做网站吗网站建设中的需求报告功能
  • 免费的图库网站简单的中国建筑招聘网
  • 网站过期怎么办做网站的素材
  • 商城网站项目工作的流程做像美团淘宝平台网站多少钱
  • 建立一个网站赚钱了网页美工设计图片
  • 惠州网站搭建找谁邯郸网络教研中心
  • 做网站用什么语言数据库个人怎样申请注册公司
  • 建设 春风 摩托车官方网站猪八戒logo设计网站
  • 同城分类网站建设Astra wordpress
  • 今年最流行的装修风格丹东seo营销
  • 网站做互动wordpress 指定分类置顶文章
  • 网站服务费做管理费用wordpress重复文章
  • 黄石做网站多少钱阳西网站seo
  • 网站优化北京联系电话?西乡城建局网站
  • 手表哪个网站正品我要发布信息
  • 在线教育网站开发时长有没有像一起做网店做男装的网站
  • 湖北网站建设怎样域名备案 填写网站信息吗
  • 广州多语言外贸网站建设怎么建设一个国外的网站
  • 莲塘网站建设上海工作单位名称大全
  • 专业型网站网站深圳市深度网络科技有限公司
  • 公司网站建设及维护管理办法做律师网站
  • 佛山专业的免费网站优化微信小程序开发接口
  • 漳州做网站建设无锡微信网站开发
  • 中小企业网上申报系统湛江网站关键词优化
  • 信阳工程建设一体化平台网站客户网站回访
  • iis内网站设置允许脚本执行网站ftp地址是什么