zoukankan      html  css  js  c++  java
  • 力扣题目汇总(转换成小写字母,唯一摩尔斯密码,有序数组平方)

    转换成小写字母

    1.题目描述

    实现函数 ToLowerCase(),该函数接收一个字符串参数 str,并将该字符串中的大写字母转换成小写字母,之后返回新的字符串。

    示例 1:

    输入: "Hello"
    输出: "hello"
    

    示例 2:

    输入: "here"
    输出: "here"
    

    示例 3:

    输入: "LOVELY"
    输出: "lovely"
    

    2.解题思路

    大写变小写 ,内置函数lower()
    

    3.解题

    class Solution:
        def toLowerCase(self, str: str) -> str:
            s = str.lower()
            return s
    

    唯一摩尔斯密码词

    1.题目描述

    国际摩尔斯密码定义一种标准编码方式,将每个字母对应于一个由一系列点和短线组成的字符串, 比如: "a" 对应 ".-", "b" 对应 "-...", "c" 对应 "-.-.", 等等。

    为了方便,所有26个英文字母对应摩尔斯密码表如下:

    [".-","-...","-.-.","-..",".","..-.","--.","....","..",".---","-.-",".-..","--","-.","---",".--.","--.-",".-.","...","-","..-","...-",".--","-..-","-.--","--.."]
    

    给定一个单词列表,每个单词可以写成每个字母对应摩尔斯密码的组合。例如,"cab" 可以写成 "-.-..--...",(即 "-.-." + "-..." + ".-"字符串的结合)。我们将这样一个连接过程称作单词翻译。

    返回我们可以获得所有词不同单词翻译的数量。

    例如:
    输入: words = ["gin", "zen", "gig", "msg"]
    输出: 2
    解释: 
    各单词翻译如下:
    "gin" -> "--...-."
    "zen" -> "--...-."
    "gig" -> "--...--."
    "msg" -> "--...--."
    
    共有 2 种不同翻译, "--...-." 和 "--...--.".
    

    2.解题思路

    这题目看上去很难,真的做的话很简单,先转换摩斯密码形式,再用SET去重就可以了
    

    3.解题

    class Solution:
        def uniqueMorseRepresentations(self, words: List[str]) -> int:
            1
            dic = {
                'a': ".-",
                'b': "-...",
                'c': "-.-.",
                'd': "-..",
                'e': ".",
                'f': "..-.",
                'g': "--.",
                'h': "....",
                'i': "..",
                'j': ".---",
                'k': "-.-",
                'l': ".-..",
                'm': "--",
                'n': "-.",
                'o': "---",
                'p': ".--.",
                'q': "--.-",
                'r': ".-.",
                's': "...",
                't': "-",
                'u': "..-",
                'v': "...-",
                'w': ".--",
                'x': "-..-",
                'y': "-.--",
                'z': "--.."
            };
            new_word = []
            x = ''
            cont = 0
            for a in range(len(words)):
                new_word.append([])
            for a in range(len(words)):
                for b in range(len(words[a])):
                    x += dic[words[a][b]]
                    cont += 1
                    if cont == len(words[a]):
                        new_word[a] = x
                        cont = 0
                        x = ''
            return len(set(new_word)) 
    
    

    有序数组的平方

    1.题目描述

    给定一个按非递减顺序排序的整数数组 A,返回每个数字的平方组成的新数组,要求也按非递减顺序排序。

    示例 1:

    输入:[-4,-1,0,3,10]
    输出:[0,1,9,16,100]
    

    示例 2:

    输入:[-7,-3,2,3,11]
    输出:[4,9,9,49,121]
    

    提示:

    1. 1 <= A.length <= 10000
    2. -10000 <= A[i] <= 10000
    3. A 已按非递减顺序排序。

    2.解题思路

    里面数开平方且有序怕列
    

    3.解题

    class Solution:
        def sortedSquares(self, A: List[int]) -> List[int]:
            return sorted([ i**2 for i in A ])
    

    ```有更加好的思路,或者解题方法评论区留言谢谢``

  • 相关阅读:
    内存不足报错
    curl Command Download File
    How to POST JSON data with Curl from Terminal/Commandline to Test Spring REST?
    IOS常用手势详解
    OC中的NSNumber、NSArray、NSString的常用方法
    如何利用autolayout动态计算UITableViewCell的高度
    对AFN和ASI各自使用方法及区别的总结
    转:你真的懂iOS的autorelease吗?
    文件管理(续)
    IOS文件管理
  • 原文地址:https://www.cnblogs.com/pythonywy/p/10901575.html
Copyright © 2011-2022 走看看