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

友情链接交易平台源码佛山关键词优化服务

友情链接交易平台源码,佛山关键词优化服务,网页设计与制作教程第二版张晓蕾课后答案,中国建设银行网站查询密码是什么大家好我是苏麟,今天带来快速排序 . 快速排序 单边快速排序(lomuto 洛穆托分区方案) 单边循环 (lomuto分区) 要点 : 选择最右侧元素作为基准点j 找比基准点小的,i 找比基准点大的,一旦找到,二者进行交换。 交换时机: 找到小的&#xff0c…

大家好我是苏麟,今天带来快速排序 .

快速排序

单边快速排序(lomuto 洛穆托分区方案)

单边循环 (lomuto分区) 要点 :

  • 选择最右侧元素作为基准点
  • j 找比基准点小的,i 找比基准点大的,一旦找到,二者进行交换。
  1. 交换时机: 找到小的,且与i不相等o
  2. i找到 >= 基准点元素后,不应自增
  • 最后基准点与i 交换,i 即为基准点最终索引

B站解析 :

基础算法-210-排序算法-单边快排_哔哩哔哩_bilibili

代码 :

class Solution {public int[] sortArray(int[] nums) {int length = nums.length;sort(nums,0,length - 1);return nums;}public void sort(int[] nums,int left,int right){if(left >= right){return;}int i =  qicke(nums,left,right);sort(nums,left,i - 1);sort(nums,i + 1,right);}public int qicke(int[] nums,int left,int right){int i = left;int j = left;int p = nums[right];while(j < right){if(nums[j] < p){if(i != j){swap(nums,i,j);}i++;}j++;}swap(nums,i,right);return i;   }public void swap(int[]nums,int i,int j){int temp = nums[i];nums[i]=nums[j];nums[j]=temp;}
}

双边快速排序

双边循环要点 :

  • 选择最左侧元素作为基准点 
  • 找比基准点小的,i 找比基准点大的,一旦找到,二者进行交换
  1. i从左向右
  2. j从右向左
  • 最后基准点与i 交换,i 即为基准点最终索引

B站解析 :

基础算法-211-排序算法-双边快排_哔哩哔哩_bilibili

解析 : 

class Solution {public int[] sortArray(int[] nums) {int length = nums.length;sort(nums,0,length - 1);return nums;}public void sort(int[] nums,int left,int right){if(left >= right){return;}int i =  qicke(nums,left,right);sort(nums,left,i - 1);sort(nums,i + 1,right);}public int qicke(int[] nums,int left,int right){int i = left;int j = right;int p = nums[left];while(i < j){while(i < j && nums[j] > p){j--;}while(i < j && nums[i] <= p){i++;}swap(nums,i,j);}swap(nums,i,left);return i;   }public void swap(int[]nums,int i,int j){int temp = nums[i];nums[i]=nums[j];nums[j]=temp;}
}

小题一道

这道题是一个数组排序题目 , 没有指定什么排序 , 但是为了更好的学习快速排序 ,请大家用快速排序做这道题 , 但是有一个Bug 有的块排会超时间限制  , 请大家自己思考用什么样的快排 .

题目 :

LeetCode : 912 排序数组

912. 排序数组

分析 :

根据上面写出快排 

解析 :

class Solution {public int[] sortArray(int[] nums) {int length = nums.length;quickSort(nums,0,length - 1);return nums;}public void quickSort(int[] array,int start,int end){if (start >= end) {return; } int left = start, right = end; int pivot = array[(start + end) / 2];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);} 
}

这期就到这里 , 下期见!

http://www.yayakq.cn/news/266229/

相关文章:

  • 摄影网站制作wordpress 777权限
  • 北海网站建设服务商做app模板网站有哪些内容
  • 海南网站制作公司如果自己想建设网站该怎么做
  • 做网站导航的网站后台不能粘贴文章
  • 手机网站支付如何制作论网站建设情况
  • 网站怎么做舆情监测什么是速成网站
  • seo网站推广优化就找微源优化北京市造价信息网官网
  • 中小学校园网站建设影响网站速度吗
  • 网页源码怎么做网站建英语网站首页
  • 南阳微网站做 cad效果图网站
  • 北京网站页面设计中国商业网点
  • cms智能云平台seo建站
  • 旅游网站建设多少钱成全视频免费观看在线看小说下载
  • 濮阳网站建设优化专业网站设计的公司
  • 广东建设局网站首页中国建筑集团人才招聘信息网
  • 网站的建设需要虚拟机吗wordpress熊掌号百度主动提交
  • 中小网站建设百度地图开放平台
  • 湛江专业自助建站详情三网合一企业网站
  • 企业seo自助建站系统郑州优化网站公司有哪些
  • 罗湖网站-建设深圳信科池州市网站建设
  • seo建站收费地震做购物网站公司
  • 写网站策划书需要注意什么网络科技公司注册资金
  • h5网站价格jquery做网站浏览量
  • 网站建设应该注意哪些惠州人才市场最新招聘信息网
  • 免费企业网站建设介绍网站制作流程一般制作流程?
  • 网站开发制作学徒个人怎么注册网站
  • 做网站需要多少网站屏幕自适应代码
  • 网站上图片的链接怎么做自己如何开网站
  • 社区网站建设方案现货电子交易平台
  • 安平网站建设培训想自学设计从哪里开始