前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >LeetCode - 反转字符串&字符串转换整数

LeetCode - 反转字符串&字符串转换整数

作者头像
晓痴
发布2020-01-15 15:57:21
8240
发布2020-01-15 15:57:21
举报
文章被收录于专栏:曌的晓痴曌的晓痴

2020年的第一天,必须更新一条公众号,证明自己还在努力刷题(几周写一题),努力写公众号中。

原题地址:https://leetcode-cn.com/problems/reverse-string/

题目描述

编写一个函数,其作用是将输入的字符串反转过来。输入字符串以字符数组 char[] 的形式给出。

不要给另外的数组分配额外的空间,你必须原地修改输入数组、使用 O(1) 的额外空间解决这一问题。

你可以假设数组中的所有字符都是 ASCII 码表中的可打印字符。

解题思路:

这题我当时使用Go语言写的,直接从两端遍历,然后一直互换内容就好了。轻松加愉快的解决一题。

中文官网题解:

https://leetcode-cn.com/problems/reverse-string/solution/

个人题解:

代码语言:javascript
复制
func reverseString(s string) string {
    runes := []rune(s)
    for i, j := 0, len(runes)-1; i < j; i, j = i+1, j-1 {
        runes[i], runes[j] = runes[j], runes[i]
    }
    return string(runes)
}

结果:

15ms很靠前,虽然现在看不出来了。

接下去是第二题

原题地址:https://leetcode-cn.com/problems/string-to-integer-atoi/

题目描述

题意很简单,最关键就是一句话:请你来实现一个 atoi 函数,使其能将字符串转换成整数。

解题思路:

  1. 首先就是先把头尾的空格给去除,然后判断正负
  2. 然后就是一直遍历字符串,直到遍历结束或者字符不在0-9之间,每次遍历到的数字,都可以计算在原来的结果值上
  3. 最后就是判断正负和是否超过Integer的阈值

中文官网题解:

https://leetcode-cn.com/problems/string-to-integer-atoi/solution/

个人题解:

代码语言:javascript
复制
public class Solution {
    public int myAtoi(String str) {
         if (str == null || str.length() < 1)
            return 0;
        str = str.trim();
        char flag = '+';

        int i = 0;
        if (str.charAt(0) == '-') {
            flag = '-';
            i++;
        } else if (str.charAt(0) == '+') {
            i++;
        }
        double result = 0;

        while (str.length() > i && str.charAt(i) >= '0' && str.charAt(i) <= '9') {
            result = result * 10 + (str.charAt(i) - '0');
            i++;
        }

        if (flag == '-')
            result = -result;

        if (result > Integer.MAX_VALUE)
            return Integer.MAX_VALUE;

        if (result < Integer.MIN_VALUE)
            return Integer.MIN_VALUE;

        return (int) result;
    }
}

结果:

惨不忍睹的执行耗时。

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2020-01-01,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 曌的晓痴 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档