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

济南企业网站关键词推广wordpress本地很慢

济南企业网站关键词推广,wordpress本地很慢,彩票网站给实体店做代销,烟台市未成年思想道德建设网站这个算法采用了荷兰国旗问题(Dutch National Flag Problem)的解法思想,用三个指针将数组中的元素分为三个区域,并且对这些区域进行动态调整,达到排序的目的。 算法思想: 三个指针: low 指针表示…

在这里插入图片描述
这个算法采用了荷兰国旗问题(Dutch National Flag Problem)的解法思想,用三个指针将数组中的元素分为三个区域,并且对这些区域进行动态调整,达到排序的目的。

算法思想:

  1. 三个指针

    • low 指针表示当前0应该存放的区域的边界。
    • mid 指针用来遍历数组,每次检查当前位置的元素。
    • high 指针表示当前2应该存放的区域的边界。
  2. 算法步骤

    • 开始时,lowmid 都指向数组的开头,high 指向数组的末尾。
    • 遍历数组,当 mid 小于等于 high 时:
      • 如果 nums[mid] == 0,表示当前元素是红色(0),应该放到数组的前面,所以与 low 交换,lowmid 同时右移一位。
      • 如果 nums[mid] == 1,表示当前元素是白色(1),不需要移动,mid 右移一位。
      • 如果 nums[mid] == 2,表示当前元素是蓝色(2),应该放到数组的末尾,所以与 high 交换,并将 high 左移一位,而 mid 不动,等待交换后的元素检查。
  3. 循环结束条件

    • mid 指针超过 high 时,说明所有的元素都已经按照红、白、蓝的顺序排列完毕。

关键点:

  • in-place 排序:这个算法不需要额外的空间,直接在原数组上进行排序。
  • 时间复杂度:每个元素最多被遍历一次,因此时间复杂度是 O(n),其中 n 是数组的长度。
  • 空间复杂度:由于只使用了常数级别的额外空间,空间复杂度为 O(1)。

例子:

假设输入数组是 [2,0,2,1,1,0]

  • 初始化 low = 0, mid = 0, high = 5
  • 第一次遍历 nums[mid] = 2,交换 nums[mid]nums[high],数组变为 [0,0,2,1,1,2]high 左移。
  • 第二次遍历 nums[mid] = 0,交换 nums[mid]nums[low]lowmid 右移,数组不变。
  • 持续遍历并根据上述逻辑调整,最终数组为 [0,0,1,1,2,2],排序完成。

这个算法的核心是通过遍历数组,动态调整0、1、2的位置,保证红色、白色、蓝色按照顺序排列。

java 代码:

class Solution {public void sortColors(int[] nums) {int low = 0, mid = 0, high = nums.length - 1;while(mid <= high) {if(nums[mid] == 0) {swap(nums, low, mid);low++;mid++;} else if(nums[mid] == 1) {mid++;} else if(nums[mid] == 2) {swap(nums, mid, high);high--;}}}private void swap(int[] nums, int start, int end) {int temp = nums[start];nums[start] = nums[end];nums[end] = temp;}
}
http://www.yayakq.cn/news/305806/

相关文章:

  • 怎么帮自己做的网站申请地址网站上线 模板
  • 网站分析怎么做网站建设策划框架
  • 网站建设 推广就选网沃科技保定哪里做网站
  • 宿州网站建设工作室asp网站打开速度慢
  • 小俊哥网站建设广东省特色专业建设网站
  • 哪些网站专做自媒体的电商网站建设比较好的
  • 如何在网站发广告长春火车站地址
  • 做网站要有自己服务器吗低代码开发技术
  • 松江网站建设品划网络视频网站开发技术
  • 一流的网站建设与优化老河口市网站
  • 网站后台更新为什么前台不现实阿里云怎么注册域名
  • 广东制作公司网站手机银行网站建设
  • 深圳金融网站建设移动关闭流量自动续费
  • 怎么建设电子邮箱网站网页制作标题设置步骤
  • 网站展示效果图小广告设计
  • 北京网站设计确保代码符合w3c怎么做跨境电商流程及步骤
  • 从那些方面建设网站天津市建设工程质量协会网站
  • 我想建设网站全屏背景网站如何做到自适应
  • 苏中建设 官方网站创建网页链接
  • 做外发的网站廊坊短视频优化案例
  • 网站开发部门结构ae模板下载网站推荐
  • 网站后端开发需要学什么产品开发详细流程图
  • 做网站专题怎样添加微博外贸英文网站建设
  • 外国设计师素材网站怎么做自己的代刷网站
  • 服装定制网站源码网页制作作业成品
  • 医院网站怎么做网站建设 岗位职责
  • 承德网站制作公司优选网十科技重庆建站培训
  • 郑州网站及优化微网站建设及开发
  • 湖南省建设银行网站6河南建设工程网
  • 机械网站精选工程公司名字