1. 首页
  2. 技术
  3. 后台

VSC++: 升降分段

有心栽花花也开,无心插柳柳成荫,这个可用于分治排序,速度一定会提高.

void 升降分段(int* sz, int l)
{//缘由https://bbs.bccn.net/viewthread.php?tid=499776&pid=2721823&page=1#pid2721823
	int j = 1, z = 0; bool k = sz[0] >= sz[1], k1 = true;
	while (++j < l)
	{
		k1 = sz[j] >= sz[j + 1];
		if ((!k && !k1) || (k && k1));
		else
		{
			while (z <= j)cout << sz[z++] << ends;//效果1
			if ((j + 2) < l)
				k = sz[j + 1] > sz[j + 2];//效果2
			//k = k1, --j, --z;//效果3
			cout << endl;
		}
	}
	if ((j - z) > 1)while (z < j)cout << sz[z++] << ends;
}
	int aa[]{1,20,30,12,3,5,7,4,6,100};
	升降分段(aa, sizeof(aa) / sizeof(aa[0]));

无标题1.png (上传于2020-03-16 11:00:35)


VSC++: 升降分段

无标题1.png (上传于2020-03-16 15:39:44)


VSC++: 升降分段

原创文章,作者:xianfajushi的博客,如若转载,请注明出处:https://www.zengqueling.com/vsc%ef%bc%9a-%e5%8d%87%e9%99%8d%e5%88%86%e6%ae%b5/

联系我们

15602395067

在线咨询:点击这里给我发消息

邮件:eden7@qq.com

工作时间:周一至周五,9:30-18:30,节假日休息

QR code