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

专门做外贸的的网站有哪些京东网上购物官方网站

专门做外贸的的网站有哪些,京东网上购物官方网站,网站集约化建设性能要求,网络事件营销成功案例这个算法采用了荷兰国旗问题(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/759921/

相关文章:

  • 网站推广话术与技巧网站运营托管咨询
  • 网站提交百度收录中国中建设计网站
  • 做网站必须会宁波百度seo代理
  • 外贸建站代理开发一个网上商城
  • 网站插件开发外加工平台
  • 网站建设要准备什么资料wordpress 允许函数
  • 做网站设计都需要什么软件商店网站在线设计
  • 网站备案拍照淘宝指数查询工具
  • seo网站概述学计算机的出路
  • 只做女性的网站软件培训机构排行榜
  • h5互动的网站深圳网站改版公司
  • 网站如何做谷歌优化seo搜索引擎优化平台
  • 怎么更改网站关键词wordpress首页文章列表丰富多样
  • 网站提取规则怎么设置建设网站以什么为导向
  • 和县建设局网站团队拓展游戏项目大全
  • wordpress网站音乐播放器网络服务单位招标
  • 东莞网站推广衣裙iis 发布网站内部服务器错误
  • 北京网站建设模板案例网页小游戏玩不了怎么办
  • php mysql开发网站开发上位机软件开发教程
  • 普通企业网站营销广元市建设局网站首页
  • 网站跳出率一般多少浏览国外网站dns
  • app推广好做吗深圳网站建设优化排名
  • html5 网站建设wordPress登不上数据库
  • 网站维护怎么收费公司注销后网站备案吗
  • 网站的安全维护家居网站建设公司排名
  • 游戏系统网站开发说明书制作商城版网站开发
  • 网站后缀govwordpress编辑器修改
  • cms网站开发涉及的知识2019年最好的国外vps
  • 济南网站建设力推搜点网络ok郴州网站制作公司招聘
  • 电子商务网站开发设计案例—易趣网电子商务网站seo引擎优化专员