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

房地产管理局网站企业营销管理

房地产管理局网站,企业营销管理,毕业论文做网站,外贸电子商务网站建设负数移到正数前面 已知顺序表 ( a 1 , … , a n ) (a_{1},\dots,a_{n}) (a1​,…,an​),每个元素都是整数,把所有值为负数的元素移到全部正数值元素前边 算法思想 快排的前后指针版本 排序|冒泡排序|快速排序|霍尔版本|挖坑版本|前后指针版本|非递归版…

负数移到正数前面

已知顺序表 ( a 1 , … , a n ) (a_{1},\dots,a_{n}) (a1,,an),每个元素都是整数,把所有值为负数的元素移到全部正数值元素前边

算法思想

快排的前后指针版本
排序|冒泡排序|快速排序|霍尔版本|挖坑版本|前后指针版本|非递归版本|优化|三数取中©-CSDN博客
前后两个指针往后走
cur找负数,++prev,交换prev和cur的值
prev有两种情况:

  1. 在cur还没遇到正数的时候,prev紧跟着cur
  2. 在cur遇到正数的时候,prev在一组正数的前面
    交换:把正数往后推,把负数往前甩
    本质是把一段正数的区间,推箱子似的往右推,同时把负数甩到左边去
int Rearrange(SqList a, int n)
{int prev = 0;  //指针 prev,用于记录负数区间的最后一个负数int cur = 0;   //指针 cur,用于遍历数组中的每个元素while (cur < n)  //继续遍历直到 cur 超出数组范围{if (a[cur] < 0)   //如果当前元素为负数{Swap(&a[prev++], &a[cur]);  //将负数放到负数区间的末尾}++cur;            //移动 cur 到下一个元素}return prev;          //返回负数区间的结束位置
}

![[Pasted image 20241025141506.png]]

cur指向的是负数,与prev交换,prev++
![[Pasted image 20241025141633.png]]

cur++,判断下一个元素
![[Pasted image 20241025141655.png]]

为3,cur继续往下遍历
![[Pasted image 20241025141715.png]]

cur指向-4,与prev交换,prev++
![[Pasted image 20241025141813.png]]

cur++
![[Pasted image 20241025141826.png]]

指向-1,与prev交换,prev++
![[Pasted image 20241025141906.png]]

cur++
![[Pasted image 20241025141917.png]]

为6,结束循环

小于x移到大于x前面

设有一元素为正数的线性表L(a1,a2,…,an),存放在一维数组A[N]中,以an作为参考元素,将该表分为左右两部分,左半部分的每个元素小于等于an,右半部分每个元素都大于an,an位于分界位置上,并把结果仍存放在A[N]

int Rearrange(int a[], int n)
{int prev = 0;         //指针 prev,用于记录小于an区间的最后一个负数int cur = 0;   //指针 cur,用于遍历数组中的每个元素int keyi = n - 1;while (cur < n)  //继续遍历直到 cur 超出数组范围{if (a[cur] < a[keyi])   //如果当前元素小于an{Swap(&a[prev++], &a[cur]);  //将其放到前半部分区间的末尾}++cur;            //移动 cur 到下一个元素}//只有在 prev 不等于 keyi 时才交换if (prev < keyi){Swap(&a[prev], &a[keyi]);}return prev;          //返回小于an的元素数量
}

奇数移到偶数前面

已知线性表按顺序存储,且每个元素都是整数均不相同,把所有奇数移到所有偶数前边

思想同上

int Rearrange(SqList a, int n)
{int prev = 0;  //指针 prev,用于记录负数区间的最后一个负数int cur = 0;   //指针 cur,用于遍历数组中的每个元素while (cur < n)  //继续遍历直到 cur 超出数组范围{if (a[cur] % 2 != 0)   //如果当前元素为奇数{Swap(&a[prev++], &a[cur]);  //将奇数放到前半区间的末尾}++cur;            //移动 cur 到下一个元素}return prev;          //返回奇数区间的结束位置
}
http://www.hkea.cn/news/848326/

相关文章:

  • 中国建设监理网站广告网络
  • 网站维护费用怎么收路由优化大师官网
  • 如何加入小说网站做打字员合肥网站优化推广方案
  • 网站建设现状关键词在线优化
  • 网站建设就业百度网址导航主页
  • 郑州公司做网站汉狮中囯联通腾迅
  • 专业网上购物平台优化网站的步骤
  • 用web开发一个网站怎么做网站推广优化平台
  • 建设企业网站进去无法显示搜索引擎seo
  • 网站 分辨率百度视频推广
  • 中国红河网seo排名工具
  • 做网站商丘3a汽车集团公司网络营销方案
  • 网络宣传推广策划范文seo如何优化排名
  • 网站 建设 原则新闻今天的最新新闻
  • 服装网站首页设计主要推广手段免费
  • 网站建设公司做销售好不好?seo搜索引擎优化实训总结
  • 江西威乐建设集团有限公司企业网站长春关键词优化公司
  • 深圳网站建设lxhd英文关键词seo
  • 在线购物商城网站百度移动端排名软件
  • 太原网站的公司友情链接的英文
  • 网站是用什么做的吗百度q3财报2022
  • 深圳福田网站建设公司如何做谷歌seo推广
  • 西安有做网站的吗北京网站设计公司
  • 哪家专门做特卖网站平台连接
  • 衢州网站推广最近发生的重大新闻
  • 网页设计的网站配色方案seo基础培训机构
  • 维护网站是什么工作淄博网站制作
  • 做电影下载网站成本淘宝关键词排名
  • 企业h5网站建设百度推广电话是多少
  • 中国保密在线网站培训系统软文怎么做