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

六安网站建设培训制作网站需要多少时间

六安网站建设培训,制作网站需要多少时间,wordpress如何恢复默认主题,360搜索引擎的特点快速排序介绍 快速排序是一种经典高效的排序方法#xff0c;是分治策略在排序上的具体体现。将一个大的待排序列分割成若干个小的有序序列#xff0c;最终将各个小的有序序列合并成一个大的有序序列。 快速排序的实现原理 选择一个基准值#xff0c;将小于基准值的元素放…快速排序介绍 快速排序是一种经典高效的排序方法是分治策略在排序上的具体体现。将一个大的待排序列分割成若干个小的有序序列最终将各个小的有序序列合并成一个大的有序序列。 快速排序的实现原理 选择一个基准值将小于基准值的元素放在基准值左侧大于基准值的元素放在基准值右侧基准值放在中间。基准值可以选择待排序列的第一个元素最后一个元素中间元素也可以选择三者的中位数提高快排效率。一轮快速排序后基准值已经有序之后对基准值两侧的数据分别进行快排这是一个递归的过程最终整个序列有序。整个过程类似于树的前序遍历每一轮的过程使用双指针所以快排本质上是树的前序遍历双指针。 快速排序的具体实现 基准值选择不同代码实现不同但本质上都是树的前序遍历双指针 选择第一个元素作为基准值代码实现 代码实现 public void quickSort(int[] array, int left, int right) {if (left right) {int pivot array[left];int i right 1;for (int j right; j left; j--) {if (array[j] pivot) {i--;int temp array[i];array[i] array[j];array[j] temp;}}int pivotIndex i - 1;int temp array[pivotIndex];array[pivotIndex] array[left];array[left] temp;quickSort(array, left, pivotIndex - 1);quickSort(array, pivotIndex 1, right);} }选择最后一个元素作为基准值代码实现 代码实现 public void quickSort(int[] array, int left, int right) {if (left right) {int pivot array[right];int i left - 1;for (int j left; j right; j) {if (array[j] pivot) {i;int temp array[i];array[i] array[j];array[j] temp;}}int pivotIndex i 1;int temp array[pivotIndex];array[pivotIndex] array[right];array[right] temp;quickSort(array, left, pivotIndex - 1);quickSort(array, pivotIndex 1, right);} }选择中值作为基准值代码实现 代码实现 public static void quickSort(int[] array, int start, int end) {if (start end) {return;}int left start;int right end;int mid (left right) / 2;int pivot array[mid];while (left right) {while (left right array[left] pivot) {left;}while (left right array[right] pivot) {right--;}if (left right) {int temp array[left];array[left] array[right];array[right] temp;left;right--;}}quickSort(array, start, right);quickSort(array, left, end); }快速排序复杂度分析 时间复杂度 平均情况下O(n log n)。在平均情况下快速排序通常具有优秀的性能。每次分割都将数组分为两部分每部分的大小约为原数组的一半。因此在进行 log n 次递归后每个子数组都会被完全排序总的时间复杂度是 O(n log n)。 最坏情况下O(n^2)。最坏情况发生在选择基准值不平衡的情况下导致每次分割只能减少一个元素。例如如果数组已经有序或接近有序且始终选择第一个元素作为基准值那么就会出现最坏情况。为了避免最坏情况可以使用随机选择基准值或者三数取中法等策略。 最好情况下O(n )。最好情况发生在数组有序 空间复杂度 快速排序是一种原地排序算法不需要额外的内存空间因此其空间复杂度是 O(1)。 稳定性 快速排序是不稳定的排序算法即相等元素的相对顺序可能在排序后改变。
http://www.w-s-a.com/news/613879/

相关文章:

  • 电子商务专业网站建设什么软件可以做动画视频网站
  • wordpress 分享主题做网站优化有必要
  • ftp 网站管理电商网站设计图片
  • 惠州免费建站模板营销型旅游网站建设
  • 南宁cms建站wordpress 开启缩略图
  • 网站模板软件网站admin密码
  • 网站信息做参考文献射阳做企业网站多少钱
  • 网站外部优化的4大重点外贸站外推广
  • 宁波网站建设活动德州乐陵德州seo公司
  • 网站网址相对路径如何设置wordpress怎么加快网站打开速度
  • 有没有能帮人快速网站备案的机构网站建设与制作总结
  • 网站不用了怎么办苏州h5模板建站
  • 网站建设制作定制免费网络短剧
  • 建设部建造师强制注销网站h5响应式网站模板下载
  • 蛋糕网站内容规划建设网站需要多少钱济南兴田德润o厉害吗
  • 企业如何建设网站呢做网站的高手
  • 为什么打开网址都是站长工具开发一款网站需要多少钱
  • 做一个网站app需要多少钱分类信息网站建设计划
  • 怎样下载建设部网站建模培训
  • 北流网站建设制作旅游网站开发目的和目标
  • 网站公司怎么做的网站建设论文二稿
  • 网站建设服务商都有哪些html项目答辩
  • 网站上传到万网主机wordpress视频防盗链
  • 西安建设商城类网站广告设计公司文案
  • 如何建设好高校网站麻辣烫配方教授网站怎么做
  • 宁波网站建设计品牌推广策略分析
  • 网站自建设需要买什么时候开始深圳市建筑市场信息公开平台
  • 平台营销型网站建设小城镇建设的网站文献
  • 燕郊个人做网站小企业网站模板
  • 网站ip需要备案新开河街做网站公司