资讯专栏INFORMATION COLUMN

Leetcode PHP题解--D63 917. Reverse Only Letters

binaryTree / 2016人阅读

摘要:题目链接题目分析给定一个包含符号的字符串,仅倒转字母的出现顺序,不改变符号的出现位置。思路先把字符串分成字母和符号两部分,保留下标。抽离字母数组的键和值,对值部分进行倒转,合并到键数组中。最终代码若觉得本文章对你有用,欢迎用爱发电资助。

D63 917. Reverse Only Letters 题目链接

917. Reverse Only Letters

题目分析

给定一个包含符号的字符串,仅倒转字母的出现顺序,不改变符号的出现位置。

思路

先把字符串分成字母和符号两部分,保留下标。
抽离字母数组的键和值,对值部分进行倒转,合并到键数组中。
再覆盖原数组中对应键即可。

最终代码
$char){
            if(($char>="a" && $char<="z")
              || ($char>="A" && $char<="Z")
            ){
                $chars[$key] = $char;
            }
            else{
                $others[$key] = $char;
            }
        }
        $keys = array_keys($chars);
        $chars = array_reverse($chars);
        $chars = array_combine($keys,$chars);
        $S = $chars+$others;
        ksort($S);
        return implode("",$S);
    }
}

若觉得本文章对你有用,欢迎用爱发电资助。

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/31489.html

相关文章

  • [LeetCode] 917. Reverse Only Letters

    Problem Given a string S, return the reversed string where all characters that are not a letter stay in the same place, and all letters reverse their positions. Example 1: Input: ab-cd Output: dc-ba ...

    superw 评论0 收藏0
  • Leetcode PHP题解--D78 206. Reverse Linked List

    摘要:题目链接题目分析给定一个链表,将其倒转过来。思路我的思路是,把每一项存进数组作为栈。遍历完成后,再逐个弹出即可。最终代码若觉得本文章对你有用,欢迎用爱发电资助。 D78 206. Reverse Linked List 题目链接 206. Reverse Linked List 题目分析 给定一个链表,将其倒转过来。 思路 我的思路是,把每一项存进数组作为栈。 遍历完成后,再逐个弹出即...

    Rindia 评论0 收藏0
  • Leetcode PHP题解--D21 344. Reverse String

    摘要:题目链接题目分析题目要求以时间复杂度把字符串倒转过来。思路题目提示说用原地算法我并不会,只能用函数先应付了。最终代码若觉得本文章对你有用,欢迎用爱发电资助。 344. Reverse String 题目链接 344. Reverse String 题目分析 题目要求以O(1)时间复杂度把字符串倒转过来。 思路 题目提示说用原地算法……Emmm...我并不会,只能用strrev函数先应付...

    yuxue 评论0 收藏0
  • Leetcode PHP题解--D20 557. Reverse Words in a String

    摘要:题目链接题目分析题目要求把句子中的每个单词都倒转过来。思路这个很简单,用空格把句子分割,再用把字符串倒转过来,拼接起来就可以了。最终代码若觉得本文章对你有用,欢迎用爱发电资助。 557. Reverse Words in a String III 题目链接 557. Reverse Words in a String III 题目分析 题目要求把句子中的每个单词都倒转过来。 思路 这个...

    LoftySoul 评论0 收藏0
  • LeetCode[316] Remove Duplicate Letters

    摘要:复杂度思路用一个每次考虑当前的字符大小和的顶端字符的大小,如果当前字符比较小的话,则可以出顶端的字符,将当前的字符放进中。需要维持了一个判断当前字符在剩余字符串中的出现次数,考虑能否将这个字符从栈中弹出。 LeetCode[316] Remove Duplicate Letters Given a string which contains only lowercase letter...

    tomorrowwu 评论0 收藏0

发表评论

0条评论

binaryTree

|高级讲师

TA的文章

阅读更多
最新活动
阅读需要支付1元查看
<