题目1: 将一个给定字符串 s 根据给定的行数 numRows ,以从上往下、从左到右进行 Z 字形排列。
比如输入字符串为 “PAYPALISHIRING” 行数为 3 时,排列如下:

思路:
找规律,用一个二维数组将字符进行Z形记录,然后输出。需要找到下标i,j与输入字符串中的index的关系。

代码如下:

public static String convert(String s, int numRows) {String result="";String[][] strings = new String[numRows][s.length()];int n=numRows+numRows-2;int x=0;int y=0;if (numRows==1){return s;}for (int i = 0; i <s.length(); i++) {if (i%n<numRows){strings[i%n][y]=""+s.charAt(i);if (i%n==numRows-1){y++;}}else{strings[numRows-2-(i%n)%numRows][y]=""+s.charAt(i);y++;}}for (int i = 0; i <strings.length; i++) {for (int j = 0; j <s.length(); j++) {if (strings[i][j]!=null){result+=strings[i][j];}}}return result;}

题目2:
给你一个 32 位的有符号整数 x ,返回将 x 中的数字部分反转后的结果。
如果反转后整数超过 32 位的有符号整数的范围 [−231, 231 − 1] ,就返回 0。
假设环境不允许存储 64 位整数(有符号或无符号)。

思路:
字符串转整数,然后反转字符串,再转整数。注意用long类型接受。

代码如下:

public static  int reverse(int x) {long result=0;int len=String.valueOf(x).length();boolean flag=false;StringBuilder str=new  StringBuilder(String.valueOf(x));str=str.reverse();String targetStr=str.toString();for (int i = 0; i <len; i++) {if (str.charAt(i)!='0'){targetStr=targetStr.substring(i);break;}}result=targetStr.charAt(targetStr.length()-1)=='-'?-Long.parseLong(targetStr.substring(0,targetStr.length()-1)): Long.parseLong(targetStr);return (result>Integer.MAX_VALUE||result<Integer.MIN_VALUE)?0:(int)result;}

Z字型变幻,整数反转相关推荐

  1. LeetCode琅琊榜第十六层-Z字型变换(直接构造法 + 周期性算法)

    LeetCode6.Z字形变换 难度:中等 往期力扣与博主空间 题目链接  目录 官方解法1-构造Z字型数组模拟 案例分析 规律探索 原因: 代码实现 代码分析: 问题 官方解法二-压缩上述二维数组 ...

  2. [LeetCode] Z字型变换

    题目内容: 将字符串 "PAYPALISHIRING" 以Z字形排列成给定的行数:P A H N A P L S I I G Y I R 之后从左往右,逐行读取字符:"P ...

  3. leetcode算法题--Z字型变换

    题目链接:https://leetcode-cn.com/problems/zigzag-conversion/ 用一个二维数组来存储这个字符串,就是按照题目的方式存储,然后按行遍历即可. strin ...

  4. leetcode 6 z字型变换

    执行用时 :64 ms, 在所有 Python3 提交中击败了99.74%的用户 由题目可知 我们的最终字符串会被摆成 numRows 行,那我们理解为 最终结果是numRows个字符串相加 先建立等 ...

  5. 汇编三星题:已知数组A包含20个互不相等的字型整数,数组B包含30个互不相等的字型整数,试编制一程序把在A中而不在B中出现的整数放于数组C中。

    已知数组A包含20个互不相等的字型整数,数组B包含30个互不相等的字型整数,试编制一程序把在A中而不在B中出现的整数放于数组C中. DATAS SEGMENTBUFA DW 123BH,2,3,4,5 ...

  6. LeetCode 06Z字形变换07整数反转

    目录 Z字形变换 题意 分析 整数反转 结语 Z字形变换 题意 题目描述 将一个给定字符串根据给定的行数,以从上往下.从左到右进行 Z 字形排列. 比如输入字符串为 "LEETCODEISH ...

  7. 【算法训练】DAY1:整数反转

    1 前言 题目来源于Leetcode. 重点:理清逻辑,忽略细节,模仿高手,五毒神掌 2 题目分析 题目很容易理解,先分成两个部分 正数 负数 先解决正数 最开始想到的是 int char数组 lon ...

  8. z字扫描和光栅扫描的转换_扫描转换计算机图形中的直线

    z字扫描和光栅扫描的转换 扫描转换直线 (Scan Converting a Straight Line) For the scan conversion of a straight line, we ...

  9. LeetCode题库整理【Java】—— 7整数反转

    LeetCode题库整理[Java] 7.整数反转 题目:给出一个32位的有符号整数,你需要将这个这个整数中每位上的数字进行反转. 示例1: 输入: 123 输出: 321 示例2: 输入: -123 ...

最新文章

  1. Strutsw2与Spring整合流程-简述
  2. 山有木兮木有枝,心悦君兮君不知
  3. 使用windbg查看PE结构
  4. 带你了解线缆、WIFI、以太网协议和网络寻址
  5. C# Jpush 极光推送消息推送
  6. 李天平×××作诞生记——《亮剑.NET:.NET深入体验与实战精要》
  7. word和html互换,word与html互转(2) -- html转word
  8. react中嵌入网页_在网站中添加 React
  9. Springboot 整合 Dubbo/ZooKeeper你不知道的那点事,大神必修课
  10. 从Java直接输出到flume_js生成日志信息及实现java直接调用flume
  11. 新补丁更新(RU和RUR),新的版本(Release 18和19)
  12. keras实例化model后,结果返回NoneType
  13. 挖掘IP价值 天猫星选让明星直播1+1>2
  14. JavaScript设计模式 单例模式
  15. 1 恢复MySQL误删数据
  16. React中的state和props有什么区别?
  17. 算法同学从学校到实习,需要改变什么
  18. 后缀表达式转中缀表达式(非常简单易懂)
  19. 谈谈5G的信道编码方法
  20. 家里计算机网络布局图,图解八种家庭网络常规布局优缺点

热门文章

  1. HEXOFontmin
  2. Show, Attend, and Tell | a PyTorch Tutorial to Image Captioning代码调试(跑通)
  3. MSSQL Server 2008 - express 版 安装 企业管理器Management Studio
  4. linux调试工具ipcs的深入分析
  5. 如何防御DDoS攻击与CC攻击?
  6. winscp使用教程 linux,WinSCP使用方法教程
  7. [ZJOI2005]沼泽鳄鱼
  8. 怎样淡化疤痕留下的色素沉着
  9. STC15内部ADC测电压
  10. 利用万能数据结构表存储多源异构数据