码迷,mamicode.com
首页 > 编程语言 > 详细

[LeetCode][JavaScript]ZigZag Conversion

时间:2015-05-31 20:02:46      阅读:155      评论:0      收藏:0      [点我收藏+]

标签:

ZigZag Conversion

The string "PAYPALISHIRING" is written in a zigzag pattern on a given number of rows like this: (you may want to display this pattern in a fixed font for better legibility)

P   A   H   N
A P L S I I G
Y   I   R
And then read line by line: "PAHNAPLSIIGYIR"

 

Write the code that will take a string and make this conversion given a number of rows:

string convert(string text, int nRows);
convert("PAYPALISHIRING", 3) should return "PAHNAPLSIIGYIR".
 
 
 
 

 
号称easy,我怎么感觉并不是很水...
colDirect标记是走竖的还是走斜的,根据情况调整下标。
该死的js还没有二维数组。
 1 /**
 2  * @param {string} s
 3  * @param {number} numRows
 4  * @return {string}
 5  */
 6 var convert = function(s, numRows) {
 7     var i, j;
 8     if(numRows === 1){
 9         return s;
10     }
11     var count = 0;
12     var colDirect = true;
13     var row = 0, col = 0;
14     var map = [];
15     for(i = 0; i < s.length; i++){
16         map[i] = [];
17     }
18     for(i = 0; i < s.length; i++){
19         if(colDirect){
20             map[row][col] = s[i];
21             row++;
22             count++;
23         }else{
24             map[row][col] = s[i];
25             row--;
26             col++;           
27             count++;
28         }
29         if(colDirect && count === numRows){
30             count = 0;
31             row -= 2;
32             col++; 
33             colDirect = false;
34         }
35         if(!colDirect && count === numRows - 2){
36             count = 0;
37             colDirect = true;
38         }
39     }
40     var res = "";
41     for(i = 0; i < map.length; i++){
42         for(j = 0; j < map[i].length; j++){
43             if(map[i][j]){
44                 res += map[i][j];
45             }
46         }
47     }
48     return res;
49 };

 

 
 

[LeetCode][JavaScript]ZigZag Conversion

标签:

原文地址:http://www.cnblogs.com/Liok3187/p/4542405.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!