ZigZag Conversion


Zigzag:即循环对角线结构(

0       8       16      
1     7 9     15 17      
2   6   10   14   18      
3 5     11 13     19      
4       12       20      

 

向下循环:nRows

斜角线循环:nRows-2(减去首尾两个端点)

重复

...

string convert(string s, int nRows){
	if(nRows == 1) return s;
	string res[nRows];
	int i = 0, j, gap = nRows-2;
	while(i < s.size()){
		for(j = 0; i < s.size() && j < nRows; ++j) res[j] += s[i++];
		for(j = gap; i < s.size() && j > 0; --j) res[j] += s[i++];
	}
	string str = "";
	for(i = 0; i < nRows; ++i)
		str += res[i];
	return str;
}

  

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM