Leetcode 6. ZigZag Conversion(找规律,水题)
时间:2019-08-27
本文章向大家介绍Leetcode 6. ZigZag Conversion(找规律,水题),主要包括Leetcode 6. ZigZag Conversion(找规律,水题)使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。
6. ZigZag Conversion
Medium
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
(之字型)
1 class Solution { 2 public: 3 string convert(string s, int numRows) { 4 int len = s.length(); 5 string ans; 6 if(numRows==1) return s; 7 for(int i = 0;i < numRows; i++){ 8 int left = (numRows-1-i)*2; 9 int right = (i)*2; 10 int cnt = i; 11 int flag = 1; 12 while(cnt < len){ 13 flag = (flag+1)%2; 14 if((left==0 && flag==0)||(right==0&&flag==1)) continue; 15 ans+=s[cnt]; 16 if(flag==0) cnt = cnt+left; 17 else cnt = cnt+right; 18 } 19 } 20 return ans; 21 } 22 };
原文地址:https://www.cnblogs.com/shanyr/p/11419397.html
- 关于exp statistics的问题和简单测试(82天)
- laravel访问路由在nginx服务器上无法处理
- How Tomcat Works, A Guide to Developing Your Own Java Servlet Container
- 【开发指南】如何为nexus 5编译固件
- 支持向量机(SVM)入门详解(续)与python实现
- 数据库
- 关于Bom头的一些坑
- 使用shell脚本查看数据库负载情况(81天)
- 无法连接远程mysql数据库解决方案
- 归档问题导致的数据库无法启动 (80天)
- ubuntu上安装php7.0+nginx+mysql
- spring mvc 时间日期转换(@DateTimeFormat 注解)
- php链式操作的实现
- 循序渐进调优ddl的案例 (79天)
- JavaScript 教程
- JavaScript 编辑工具
- JavaScript 与HTML
- JavaScript 与Java
- JavaScript 数据结构
- JavaScript 基本数据类型
- JavaScript 特殊数据类型
- JavaScript 运算符
- JavaScript typeof 运算符
- JavaScript 表达式
- JavaScript 类型转换
- JavaScript 基本语法
- JavaScript 注释
- Javascript 基本处理流程
- Javascript 选择结构
- Javascript if 语句
- Javascript if 语句的嵌套
- Javascript switch 语句
- Javascript 循环结构
- Javascript 循环结构实例
- Javascript 跳转语句
- Javascript 控制语句总结
- Javascript 函数介绍
- Javascript 函数的定义
- Javascript 函数调用
- Javascript 几种特殊的函数
- JavaScript 内置函数简介
- Javascript eval() 函数
- Javascript isFinite() 函数
- Javascript isNaN() 函数
- parseInt() 与 parseFloat()
- escape() 与 unescape()
- Javascript 字符串介绍
- Javascript length属性
- javascript 字符串函数
- Javascript 日期对象简介
- Javascript 日期对象用途
- Date 对象属性和方法
- Javascript 数组是什么
- Javascript 创建数组
- Javascript 数组赋值与取值
- Javascript 数组属性和方法
- 【大家的项目】 socks5-rs 一个使用async-std的异步socks5 server实现
- JS浅拷贝与深拷贝
- 理解JS 原型链
- 关于跨域
- 创建对象的几种方法及优缺点
- 【Rust日报】2020-10-02 移动操作系统SailfishOS支持Rust了
- Git
- 网络协议
- 【crossbeam系列】5 crossbeam-util和crossbeam-queue:一些实用的小东西
- 数据结构
- 静态博客自动化部署教程
- 【每周一库】 Sincere - a micro web framework for Rust
- 小米路由器 HD(R3D) 折腾笔记
- Deepin 系统科学上网 PAC 自动代理
- 十分钟快速搭建内网穿透工具 —— frp