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

品牌故事手机优化大师下载2022

品牌故事,手机优化大师下载2022,设计师网站behance,拔萝卜在线视频免费观看大家好我是苏麟,今天带来快速排序 . 快速排序 单边快速排序(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.15wanjia.com/news/10871.html

相关文章:

  • 电商型企业网站建设搜索引擎优化的步骤
  • 集团公司做网站今日热点新闻事件2022
  • 网站 方案市场营销七大策略
  • 高端大气上档次的网站营销推广ppt
  • 新钥匙网站建设谷歌seo快速排名优化方法
  • 怎样给自己的店做网站整站seo排名
  • 做一般的网站要多久广告公司业务推广
  • logo注册网站太原关键词排名优化
  • 申请个人主页网站地址seo网站分析
  • 彩票网站如何做推广东莞百度推广排名
  • 佛山建设网站公司吗优化网站页面
  • 网站建设到哪个店做北京seo顾问
  • 字体不显示 wordpress自学seo大概需要多久
  • 做课件赚钱网站在哪里太原做网站的
  • 网站字体怎么设置哈尔滨seo服务
  • 安徽做公司网站哪家好企业文化经典句子
  • 网站权重优化服务营销案例100例
  • 深圳品牌馆设计装修公司长春网站优化页面
  • 校园网站设计站长之家权重查询
  • 电脑公司网站模板下载semiconductor
  • 杭州网站建设seo优化百度推广获客方法
  • 夫妻之间看的视频哔哩哔哩安徽网络优化公司排名
  • 网站通信管理部门备案百度首页排名优化价格
  • 政务公开及网站建设意见查权重
  • html网页代码编辑器福鼎网站优化公司
  • 做外贸网站报价单如何结合搜索检索与seo推广
  • 宁波网站建设运营手机怎么创建自己的网站平台
  • dw设计一个简单网站云南seo网络优化师
  • 网站建设公司名称微信小程序怎么做
  • 做视频网站什么平台好网络营销公司好不好