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

用wampserver搭建网站5000元网站seo推广

用wampserver搭建网站,5000元网站seo推广,百度外推发帖软件,网站轮播效果给定一个包含红色、白色和蓝色、共n个元素的数组nums,原地对它们进行排序,使得相同颜色的元素相邻,并按照红色、白色、蓝色顺序排序。 使用整数0、1和2分布表示红色、白色和蓝色。 必须在不使用库内置sort函数的情况下解决这个问题。 示例1&a…

给定一个包含红色、白色和蓝色、共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
  • 进阶:你能想出一个仅使用常数空间的一趟扫描算法吗?

本题是经典的【荷兰国旗问题】,由计算机科学家 Edsger W. Dijkstra 首先提出。

解题思路:

方法一:单指针

两次遍历:在第一次遍历中,将数组中所有的0交换到数组头部。

                  第二次遍历中,将数组中所有的1交换到头部的0之后。

void swap(int *a,int *b)
{int t = *a;*a = *b,*b = t;
}void sortColors(int *nums,int numsSize)
{int ptr = 0;for(int i=0;i<numsSize;++i){if(nums[i]==0){swap(&nums[i],&nums[ptr]);++ptr;}}for(int i=ptr;i<numsSize;i++){if(nums[i]==1){swap(&nums[i],&nums[ptr]);++ptr;}}
}

 时间复杂度:O(n),其中n是数组nums的长度。

 空间复杂度:O(1)

方法二:双指针

使用两个指针分别来交换0和1

void swap(int *a,int *b)
{int t= *a;*a= *b,*b=t;
}void sortColors(int *nums,int numsSize)
{int p0 = 0,p1=0;for(int i=0;i<numsSize;i++){if(nums[i]==1){swap(&nums[i],&nums[p1]);p1++;}else if(nums[i]==0){swap(&nums[i],&nums[p0]);if(p0<p1)  swap(&nums[i],&nums[p1]);++p0,++p1;}}
}

时间复杂度:O(n),其中n是数组nums的长度

空间复杂度:O(1)

方法三:双指针

左指针P0来交换0

右指针P2来交换2

void swap(int *a,int *b)
{int t=*a;*a=*b,*b=t;
}void sortColors(int *nums,int numsSize)
{int p0=0,p2=numsSize-1;for(int i=0;i<p2;i++){while(i<=p2 && nums[i]==2){swap(&nums[i],&nums[p2]);--p2;}if(nums[i]==0){swap(&nums[i],&nums[p0]);++p0;}}
}

时间复杂度:O(n),其中n是数组nums的长度

空间复杂度:O(1)

方法四:记录0 1 2的个数,对其进行赋值即可。

http://www.jinmujx.cn/news/111198.html

相关文章:

  • 大理石在哪些网站做宣传北京seo技术交流
  • 财务公司网站源码精准营销及推广
  • 济南做网站互联网公司举三个成功的新媒体营销案例
  • 沧州市网站建设电话网站seo分析报告
  • 做网站挂广告赚多少网上国网推广
  • 大型电商网站开发方案附近电脑培训学校
  • 旅游电商网站开发平台接广告在哪里接的
  • wordpress123页热门seo推广排名稳定
  • mac不能使用wordpressseo赚钱培训
  • 南通网站建设十年以上公司网络推广培训班
  • 成都网站建设与网站推广培训怎么免费给自己建网站
  • 拟定网站优化方案谷歌浏览器官网下载手机版
  • 怎嘛做网站网站推广技巧有哪些
  • 旅游电子商务网站建设规划河南网站seo费用
  • 网站建设与用户需求分析专门的网页制作工具有
  • 怎样购买域名百度首页排名优化平台
  • 做自我介绍的网站的图片素材优化网站收费标准
  • 自做网站教程网络营销推广实战宝典
  • 南川网站建设百度官方网站网址
  • 高端网站开发建设怎么推广app
  • 学做衣服网站恶意点击软件有哪些
  • 张家口建设网站seo标题优化的方法
  • 做外汇 虚拟网站公关负面处理公司
  • 重庆网站备案规则seo外包上海
  • 外贸自己做网站好不好九江seo
  • 电子政务门户网站建设百度识图找原图
  • 昆山品牌网站建设百度网站优化软件
  • 金华网站建设平台nba排名最新赛程
  • 沧州做英文网站哪家公司好百度在线使用
  • 政府网站职能建设论文谷歌浏览器安卓版