zoukankan      html  css  js  c++  java
  • 力扣题目汇总(最长特殊序列,回文数,移动零)

    最长特殊序列 Ⅰ

    1.题目描述

    1. 给定两个字符串,你需要从这两个字符串中找出最长的特殊序列。最长特殊序列定义如下:该序列为某字符串独有的最长子序列(即不能是其他字符串的子序列)。

      子序列可以通过删去字符串中的某些字符实现,但不能改变剩余字符的相对顺序。空序列为所有字符串的子序列,任何字符串为其自身的子序列。

      输入为两个字符串,输出最长特殊序列的长度。如果不存在,则返回 -1。

      示例 :

      输入: "aba", "cdc"
      输出: 3
      解析: 最长特殊序列可为 "aba" (或 "cdc")
      

      说明:

      1. 两个字符串长度均小于100。
      2. 字符串中的字符仅含有 'a'~'z'。

    2.解题思路

    首先先把特例干掉
    输入为两个字符串,输出最长特殊序列的长度。如果不存在,则返回 -1。
    其次按照题目描述走
    

    3.解题

    class Solution:
        def findLUSlength(self, a: str, b: str) -> int:
            if a == b :
                return -1
            return max(len(a),len(b))
    

    回文数

    1.题目描述

    1. 判断一个整数是否是回文数。回文数是指正序(从左向右)和倒序(从右向左)读都是一样的整数。

      示例 1:

      输入: 121
      输出: true
      

      示例 2:

      输入: -121
      输出: false
      

    解释: 从左向右读, 为 -121 。 从右向左读, 为 121- 。因此它不是一个回文数。

    
    **示例 3:**
    
    

    输入: 10
    输出: false
    解释: 从右向左读, 为 01 。因此它不是一个回文数。

    
    ### 2.解题思路
    
    ```python
    用切片工具进反转
    

    3.解题

    class Solution(object):
        def isPalindrome(self, x):
            """
            :type x: int
            :rtype: bool
            """
            if str(x)[::-1] == str(x)[:]:
                return  True
            else:
                return  False
    

    移动零

    1.题目描述

      1. 给定一个数组 nums,编写一个函数将所有 0 移动到数组的末尾,同时保持非零元素的相对顺序。

        示例:

      输入: [0,1,0,3,12]
      输出: [1,3,12,0,0]
      
        **说明**:
      
        1. 必须在原数组上操作,不能拷贝额外的数组。
      2. 尽量减少操作次数。
      
      

    2.解题思路

    我的思路是先记录0的数量,把0删光,再根据计数0的个数末尾加上去
    

    3.解题

    class Solution:
        def moveZeroes(self, nums: List[int]) -> None:
            """
            Do not return anything, modify nums in-place instead.
            """
            num_0 = 0
            while 0 in nums:
                index_0 = nums.index(0)
                nums.pop(index_0)
                num_0 += 1
            for a in range(num_0):
                nums.append(0)
    

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

  • 相关阅读:
    数据库如何部署上线阅读总结
    Nginx解决防盗链,服务器宕机,跨域,防DDOS
    跨域和表单重复提交
    Socet
    Redis发布订阅
    MySQL和Oracle的区别
    Redis事务、持久化、发布订阅
    Redis主从复制和哨兵模式
    Idea中使用Redis的Java客户端和Jedis
    Redis介绍及命令
  • 原文地址:https://www.cnblogs.com/pythonywy/p/10901266.html
Copyright © 2011-2022 走看看