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

网络推广费用预算表北京seo学校

网络推广费用预算表,北京seo学校,做网站翻页怎么做,类似b站的网站怎么做的给定一个包含红色、白色和蓝色、共 n 个元素的数组 nums ,原地 对它们进行排序,使得相同颜色的元素相邻,并按照红色、白色、蓝色顺序排列。 我们使用整数 0、 1 和 2 分别表示红色、白色和蓝色。 必须在不使用库内置的 sort 函数的情况下解…

给定一个包含红色、白色和蓝色、共 n 个元素的数组 nums ,原地 对它们进行排序,使得相同颜色的元素相邻,并按照红色、白色、蓝色顺序排列。

我们使用整数 0、 1 和 2 分别表示红色、白色和蓝色。

必须在不使用库内置的 sort 函数的情况下解决这个问题。

示例 1:

输入:nums = [2,0,2,1,1,0]
输出:[0,0,1,1,2,2]

示例 2:

输入:nums = [2,0,1]
输出:[0,1,2]

提示:

  • n == nums.length
  • 1 <= n <= 300
  • nums[i] 为 01 或 2

进阶:

  • 你能想出一个仅使用常数空间的一趟扫描算法吗?

写就写进阶的解,这还不简单,直接上代码,看不懂可以私信或评论,第一时间解答

class Solution {/**这个题目也是听起来比较唬人,但是这个仔细想想如果按照数字来看,不就是红色最小,白色居中,蓝色最大吗这是啥问题?荷兰国旗啊,下面我们用荷兰国旗问题解一下,这就是荷兰国旗里的Partition */public void sortColors(int[] nums) {/**如果就一个那就直接返回吧,没啥可操作的*/if(nums.length == 1) {return;}/**开始进行划分,redLast表示确定的红的最后一个位置,目前还没有,blueFirst表示确定的蓝色的第一个位置,目前也还没有*/int redLast = -1;int blueFirst = nums.length;int cur = 0;while(cur < blueFirst) {/**等于的不管 */if(nums[cur] == 1) {cur ++;/**如果是0和红色的最后一个位置的下一个交换,扩充红色区,因为换的是之前的位置,所以这里cur不用验证,也直接++ */} else if(nums[cur] == 0) {swap(nums, cur++, ++redLast);} else {/**如果是2,就和蓝色的最后一个位置的前一个交换,扩充红色区,但是这个是从后面缓过来的,需要看看*/swap(nums, cur, --blueFirst);}}}public void swap(int[] nums, int i, int j) {int temp = nums[i];nums[i] = nums[j];nums[j] = temp;}
}

http://www.shuangfujiaoyu.com/news/56148.html

相关文章:

  • 2015做导航网站天津百度seo排名优化软件
  • 网站建设梦幻创意交换免费连接
  • 网站做百度竞价利于百度优化百度一下首页问问
  • 微信公众号个人可以做网站么网络营销方式包括哪些
  • 重庆品牌网站建设怎么样谷歌seo网站推广怎么做
  • 南昌网站建设索q.479185700上海企业seo
  • 旅游网站内容规划特点新闻源软文推广平台
  • 直销网站建设公司百度惠生活推广怎么收费
  • dede装修网站模板有哪些搜索引擎网站
  • 创建公司网站内容总结市场营销策划方案书
  • 公司网站后台是什么太原模板建站定制网站
  • 网站建设培训速成谁有恶意点击软件
  • 医药类网站怎么做seo百度怎样发布信息
  • 济源做网站公司微信小程序开发
  • 免费创建网站 优帮云百度下载安装最新版
  • 货架网站开发建网站免费
  • 用什么软件做网站布局外贸网站建设推广公司
  • 贷款网站织梦模板源码seo交流qq群
  • 福建网站建设推广宁波seo推广推荐公司
  • 怎么做这个购物网站今日热点新闻10条
  • 怎么做流量网站企业查询官网
  • 模板展示网站源码seoyoon
  • 用手机可以做网站seo网络优化培训
  • 找做网站公司广告联盟下载app
  • 做网站需要icp经营许可证东莞全网推广
  • wordpress标签工具南宁seo排名外包
  • 网站开发的功能需求怎么写市场推广怎么写
  • 外贸网站源代码如何免费注册一个网站
  • 网站子页面设计潮州网络推广
  • 备案 非网站排名优化公司电话