• LeetCode日常小习题


    LeetCode练习题:

    1、给定一个大小为 n 的数组,找到其中的众数。众数是指在数组中出现次数大于 ⌊ n/2 ⌋ 的元素。

    你可以假设数组是非空的,并且给定的数组总是存在众数。

    示例 1:

    输入: [3,2,3]
    输出: 3
    示例 2:

    输入: [2,2,1,1,1,2,2]
    输出: 2

    class Solution:
        def majorityElement(self, nums: List[int]) -> int:
            nums.sort()
            return nums[int(len(nums)/2)]
    

    解答:本题有点小陷阱,按照平常的方式来解答系统会给你一个有无数个1的数组,这样时间就会很长,消耗过大,有个简单粗暴的方式就是先给数组排序,然后取出中间的那个数,因为题目假设了数组是非空的,并且给定的数组总是存在众数,其实只要那个那个众数存在,那数组一定是单数,那排过序的数组中中间的那个数一定是所要的众数

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

    示例 1:

    输入: 121
    输出: true
    示例 2:

    输入: -121
    输出: false
    解释: 从左向右读, 为 -121 。 从右向左读, 为 121- 。因此它不是一个回文数。
    示例 3:

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

    class Solution:
        def isPalindrome(self, x: int) -> bool:
            n=str(x)
            tmp = n[::-1]         
            if n == tmp:
                return True
            else:
                return False
    

    解答:本题解答的关键在于n[::-1]从右到左显示,看题目的话应该知道系统自动定义了x为int型,我们需要先将x从整形变成字符串类型赋值给一个变量,将再从右到左显示的结果赋值到另外一个变量,最后对两个变量进行比较,如果相同就返回true,否则就返回false

    既然选择了远方,只能风雨兼程
  • 相关阅读:
    判断IE浏览器的版本号
    解决下拉框第一行出现空格的问题
    Springboot整合log4j2日志全解
    Java NIO之Selector(选择器)
    ZooKeeper客户端 zkCli.sh 节点的增删改查
    Java API操作ZooKeeper
    ReentrantLock(重入锁)功能详解和应用演示
    MySQL高可用集群方案
    Redis高可用之集群配置(六)
    linux free命令详解
  • 原文地址:https://www.cnblogs.com/lzss/p/11253070.html
Copyright © 2020-2023  润新知