Algorithm
ZigZag Conversion,题目如下,给定字符串,然后按照Z字形规则组成一个数组,然后按照行的顺序输入字符串。
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 s, int numRows);
Example 1:
Input: s = "PAYPALISHIRING", numRows = 3
Output: "PAHNAPLSIIGYIR"
Example 2:
Input: s = "PAYPALISHIRING", numRows = 4
Output: "PINALSIGYAHRPI"
Explanation:
P I N
A L S I G
Y A H R
P I
给出的参考方案有两种:
string result = "";
if (s.Length == 1 || numRows==1)
{
return s;
}
for (int i = 0; i < numRows; i++)
{
for (int j = 0; (i + j * (numRows + (numRows - 2))) < s.Length;j++)
{
result += s[(i + j * (numRows + (numRows - 2)))];
if (i!=0&& i!=(numRows-1) && (((j+1) * (numRows + (numRows - 2)))-i)
以4列为例,第0列和第3列很容易找到编号
Example 2:
Input: s = "PAYPALISHIRING", numRows = 4
Output: "PINALSIGYAHRPI"
Explanation:
P I N
A L S I G
Y A H R
P I
Review
原文链接:https://uxdesign.cc/design-better-forms-96fadca0f49c
标题:Design Better Forms
Common mistakes designers make and how to fix them
主要内容是以一个注册/个人信息界面为例,介绍和对比一些作者觉得在界面排版和显示上更好的方式。截取几个我觉得还不错的建议。后面的没有附上图片,可以去原文链接查看。
Tips & Share
{{message}}
{{5+5}}
{{ message.split('').reverse().join('') }}
鼠标悬停几秒钟查看此处动态绑定的提示信息!
百度
{{ message_rev }}
{{ message_model }}
v-bind 和 v-on 有缩写:
ifseen
elseifseen
elseseen
showseen
迭代--数组
-
{{item.name}}
迭代时候使用 key value index
-
{{value}}--{{key}}--{{index}}
迭代--对象
-
{{item}}
迭代时候使用 key value index
-
{{value}}--{{key}}--{{index}}
迭代--整数
-
{{item}}
迭代时候使用 key value index
-
{{value}}--{{key}}--{{index}}
从输出结果可以看到:迭代遍历的时候 key value index 有特殊意义,如果遍历的是数组和整数是没有index值,如果遍历的是object,使用 key value index进行迭代遍历会更方便。