博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
算法与数据结构之string专题
阅读量:6826 次
发布时间:2019-06-26

本文共 1699 字,大约阅读时间需要 5 分钟。

58. Length of Last Word

这是leecode的一道题,思路非常简单,刚开始一直没有想出来,睡觉前一直想终于想出来了然后第二天早上准备AC的,但是竟然效率不够,下面贴上代码

class Solution {public:    int lengthOfLastWord(string s) {        int counts = 0;        for(int i = s.length()-1;i>=0;i++)        {            if(s[i]!=' ')                counts++;            else if(counts>0)                return counts;        }        return counts;                          }};

直接Runtime Error了,可能是因为我的循环语句拖累了算法,所以,从讨论区得到了下面这个算法

class Solution {public:    int lengthOfLastWord(string s) {  int len = 0, tail = s.length() - 1;        while (tail >= 0 && s[tail] == ' ') tail--;        while (tail >= 0 && s[tail] != ' ') {            len++;            tail--;        }        return len;       }};

思路和我的算法一致但是明显能通过,说明效率高了,但是运行时间还是AC垫底的,在排行中找到了这个算法

class Solution {public:    int lengthOfLastWord(string s) {        string tmp;        stringstream ss(s);        while (ss >> tmp) {}        return tmp.size();    }};

这个代码运用了stringstream

头文件为sstream

242. Valid Anagram

Given two strings s and t, write a function to determine if t is an anagram of s.

For example,
s = "anagram", t = "nagaram", return true.
s = "rat", t = "car", return false.
Note:
You may assume the string contains only lowercase alphabets.

初步map算法

class Solution {public:    bool isAnagram(string s, string t) {        if(s.length()!=t.length())            return false;        int len = s.length();        map
result; for(int i = 0;i

优化算法

class Solution {public:    bool isAnagram(string s, string t) {        if(s.length()!=t.length())            return false;        int len = s.length();        int result[26] = {0};        for(int i = 0;i

转载于:https://www.cnblogs.com/vhyz/p/7243668.html

你可能感兴趣的文章
android手机root后的安全问题
查看>>
bat改ip
查看>>
SpringBoot之在Servlet2.5容器中部署war应用
查看>>
项目申请文档提纲
查看>>
加密解密第二章:ollydbg用法
查看>>
百万PV网站架构
查看>>
N26-第四周作业
查看>>
在vmware安装Ubuntu桌面软件
查看>>
MySQL之用户和权限管理
查看>>
常用的命令的使用方法
查看>>
使用HeartBeat实现高可用HA的配置过程详解
查看>>
最常用的四种大数据分析方法
查看>>
ajax https请求返回json数据
查看>>
convenience - 便利构造函数
查看>>
golang 碎片整理之 结构体
查看>>
查看oracle查看当前连接以及修改最大连接数
查看>>
docker安装mysql镜像
查看>>
java中的IO整理
查看>>
我的linux学习决心书
查看>>
python 之多线程加锁
查看>>