python 刷 leetcode 题目(21)

【一】Leetcode之Python刷题之路 申请完了github帐号,又在Leetcode上发现了新大陆,从昨天开始刷题了,感觉很有意思。看视频学习Python动手不太多,现在开始刷题练习自己的代码水平,leetcode上还有很多大神,快哉美哉!   代码我都放到github里了https://github.com/Ray1225/Python_Training,欢迎大家关注并指正。话不多说,怒上代码。 1. Hamming Dista 阅读详情

191. 位1的个数

编写一个函数,输入是一个无符号整数,返回其二进制表达式中数字位数为 ‘1’ 的个数(也被称为汉明重量)。

示例 :

输入: 11
输出: 3
解释: 整数 11 的二进制表示为 00000000000000000000000000001011

示例 2:

输入: 128
输出: 1
解释: 整数 128 的二进制表示为 00000000000000000000000010000000

思路: 本题可以转化为一个进制转换的题目,如果有时间可以看看我的前一篇博客进制转换,十进制转任意进制。

代码如下:

class Solution(object):
    def hammingWeight(self, n):
        """
        :type n: int
        :rtype: int
        """
        count = 0
        while True:
            if n == 0:
                break
            n, mod = divmod(n, 2)
            if mod == 1:
                count += 1
        return count
            

461. 汉明距离

两个整数之间的汉明距离指的是这两个数字对应二进制位不同的位置的数目。

给出两个整数 x 和 y,计算它们之间的汉明距离。

注意:
0 ≤ x, y < 231.

示例:

输入: x = 1, y = 4

输出: 2

解释:
1   (0 0 0 1)
4   (0 1 0 0)
       ↑   ↑

上面的箭头指出了对应二进制位不同的位置。

思路:跟上面那个题很类似,具体看代码

代码如下:

class Solution(object):
    def hammingDistance(self, x, y):
        """
        :type x: int
        :type y: int
        :rtype: int
        """
        count = 0
        while True:
            if x == 0 and y == 0:
                break
            x, x_mod = divmod(x, 2)
            y, y_mod = divmod(y, 2)
            if x_mod != y_mod:
                count += 1
        return count
        
互相学习,互相指教
Leetcode top100题目及解答代码 (Python) 代码 代码放置在github中:https://github.com/isthegoal/leetcode_top125 使用了大量注释进行了题目 方案的解读。(类似形式如下) 题目 1 两数之和 42.20% Easy 2 两数相加 30.70% Medium 3 无重复字符的最长子串 28.00% Medium 4 寻找两个有序数组的中位数 25.60% ... 阅读详情

相关推荐

力扣热题100刷题笔记[python]

力扣100刷题题解

仰望星空 2165

力扣(leetcode)第21题合并两个有序链表(Python)

最后,我写了一篇MySQL教程,里面详细的介绍了MySQL的基本概念以及操作指令等内容,欢迎阅读!将两个升序链表合并为一个新的 升序 链表并返回。新链表是通过拼接给定的两个链表的所有节点组成的。输入:l1 = [1,2,4], l2 = [1,3,4]输入:l1 = [], l2 = [0]两个链表的节点数目范围是 [0, 50]输入:l1 = [], l2 = []l1 和 l2 均按 非递减顺序 排列。输出:[1,1,2,3,4,4]

qq_58737789的博客 1000

leetcode全套解答python版本

leetcode全套解答python版本。包括更新到10月份的的leetcode

leetcode--python--21

21. 合并两个有序链表 将两个升序链表合并为一个新的 升序 链表并返回。新链表是通过拼接给定的两个链表的所有节点组成的。 链表的排序其实和数组差不多,而且感觉比数组的代码看起来更简单,这可能就是python的简单之处吧,不需要你重复的调用指针,只需要一个赋值操作就完成了指针。看下面的代码可以和之前我写的数组排序的代码结合看,其实一样。采用方法是双指针,时间复杂度:O(m+n),空间复杂度:O(1)–因为链表创建的临时变量只是一个指针,通过一个指针就可以访问完整的链表 # Definition for si

AWhiteDongDong的博客 267

SAP交货单过账避坑指南:序列号处理、Buffer清理与BAPI提交回滚的那些事儿

本文深入解析SAP交货单过账中的序列号处理、Buffer清理与BAPI提交回滚等关键问题,提供WS_DELIVERY_UPDATE和BAPI_OUTB_DELIVERY_CONFIRM_DEC的实战优化方案。通过详细的技术分析和最佳实践,帮助开发者避免常见陷阱,提升交货单处理的稳定性和效率。

weixin_31155097的博客 431

混沌系统在图像加密中的应用(随机性测试之FIPS 140-2测试和SP800-22测试)

本节内容我们将学习混沌序列的随机性测试,那么前面讲了,混沌系统产生的随机序列,它的随机性到底好不好,除了看相图、分岔图、指数图以外,还有一个非常重要的指标,那就是FIPS 140-2测试和SP800-22测试。(1)保证密码学模块的安全性:密码学模块在加密和解密敏感信息时使用随机数生成器来增加对手动解密和猜测攻击的抵抗力。通过进行FIPS 140-2测试,可以验证密码学模块是否符合安全标准,确保其实施和设计的安全性,以有效地保护敏感信息。

weixin_42207434的博客 2085

leetcode刷题记第21题解法(python解析)(合并两个有序链表)

leetcode刷题记--> 21题解法(python解析)题目定义解题1. 暴力解决(列表)2. 优化版,使用归并法3. 递归解决实现 题目定义 将两个有序链表合并为一个新的有序链表并返回。新链表是通过拼接给定的两个链表的所有节点组成的。 示例: 输入:1->2->4, 1->3->4 输出:1->1->2->3->4->4 来源:...

qq_42274068的博客 699

C# 开发 WPS 插件实战:从环境搭建到功能实现(附完整代码)

本文提供了一份详尽的C#开发WPS插件实战指南,涵盖从环境搭建到功能实现的完整流程。通过COM技术,开发者可以创建自定义插件,为WPS Office扩展自动化功能,如文档处理与格式转换。文章包含核心概念解析、Ribbon界面集成、调试部署方法及完整代码示例,帮助开发者快速上手。

rust6ferris的博客 927

leetcode第21题python版合并两个有序链表

# Definition for singly-linked list. # class ListNode: # def __init__(self, val=0, next=None): # self.val = val # self.next = next class Solution: """ 21. 合并两个有序链表 """ def mergeTwoLists(self, list1: Optional[ListNode], l

前端帅小伙 764

【CubeMX】STM32G474 HRTIM 互补PWM与死区时间配置实战

本文详细介绍了如何使用STM32CubeMX配置STM32G474的高分辨率定时器HRTIM生成互补PWM波形并精确设置死区时间。通过实战步骤讲解时钟配置、死区计算与高级功能,帮助工程师在电机驱动和电源应用中实现精准控制,避免上下桥臂直通风险。

grpc6streamer的博客 725

Harness Engineering:让Coding Agent真正落地生产

本文将带你系统性地了解如何让Coding Agent真正落地生产,核心是依托(全球领先的持续交付、云成本管理、 feature flagging、安全治理一体化平台),结合企业级AIDD(AI-Driven Development)的工程化实践,构建一套可信赖、可观测、可扩展、可治理的Coding Agent落地体系。核心概念与理论基础:什么是Coding Agent?它和普通的AI代码补全工具(比如GitHub Copilot)有什么区别?什么是Harness Engineering?

移动开发前沿的博客 455

【PythonCode】力扣Leetcode21~25题Python版

Leetcode20-25

weixin_43790276的博客 1632

【图像去噪】论文精读:AKDT: Adaptive Kernel Dilation Transformer for Effective Image Denoising

论文题目:AKDT: Adaptive Kernel Dilation Transformer for Effective Image Denoising —— AKDT:用于有效图像去噪的自适应核膨胀Transformer图像去噪是一项基本但具有挑战性的任务,特别是在处理高分辨率图像和复杂的噪声模式时。大多数现有方法依赖于标准的 Transformer 架构,该架构通常计算复杂度高,并且对不同噪声水平的适应性有限。在本文中,我们介绍了自适应核膨胀Transformer(AKDT)

主要更新底层视觉(去噪、超分等)相关的科研内容,形式为【论文精读】+【论文复现】 1044

LeetCode新手入门:gh_mirrors/leetcode21/leetcode项目的使用方法与资源导航

gh_mirrors/leetcode21/leetcode是一个包含229道LeetCode题解的开源项目,支持C++/Java/Python/Sql/Shell Script多种编程语言,为算法学习者提供了丰富的学习资源和解题思路。 ## 为什么选择这个LeetCode项目? 对于算法新手来说,直接面对LeetCode上的题目往往不知从何下手。这个项目通过提供多种编程语言的解题方案,帮助你

gitblog_00804的博客 948

DDR5中的On-Die Termination(ODT)详解:电阻值支持及其背后的秘密

DDR5支持多档ODT电阻值,范围从40Ω到480Ω,均基于240Ω标准参考电阻RZQR_{ZQ}RZQ​。不同电阻档位对应不同的信号负载和功耗需求。校准电压点关键,常用0.8×VDD进行精准调校。CA信号间ODT匹配必须严格控制,保证命令总线稳定。选择合适的ODT值是高速内存设计中不可忽视的细节。

weixin_43199439的博客 2096

(二)使用VS2022克隆下载C++自制植物大战僵尸游戏教程

本文将介绍如何使用VS2022克隆下载《植物大战僵尸C++自制版本》。Gitee项目地址:Gitee仓库地址Github项目地址:Github仓库地址游戏官网地址(下载可直接运行)游戏官网。

尔灵尔亿的博客 4929

[C++]Leetcode超高效刷题顺序及题目详解笔记(持续更新中)

一.引言 博主最近在LeetCode上用C++练习。一路走来踩过一些坑,做了一些总结和笔记,分享给需要的人。 LeetCode网址:https://leetcode.com/ LeetCode中文版:https://leetcode-cn.com/ 二.刷题指南 LeetCode 是一个非常棒的平台,收集了许多公司的面试题目。相对其他平台而言,有着下面的几个优点: 题目全部来自业内大公司的真实面试不用处理输入输出 精力全放在解决具体问题上题目有丰富的讨论 可以参考别人的思路精确了解自己代码在所有提交代码中

cpb____的博客 2万+

老版QQ原生表情gif动态

这是老版的QQ表情,不过全是动态的的,Windows照片查看器是不会动的,可以右击用浏览器打开查看,再说一遍是老版的,只是分享给宁愿用老版也要动态的人。

【python力扣刷题经验分享】——从初入力扣到上分变强!!!

在力扣的异世界里不断升级!

2301_80269840的博客 6409

计算机控制技术及应用

《计算机控制技术及应用》通过总结作者的科研成果和吸收国内外的先进理论、方法和技术,以计算机控制系统的网络化、开放化、智能化和集成化发展趋势为主线索,主要介绍计算机控制系统的基本概念和计算机控制系统的典型形式,计算机控制系统的数学描述与基本分析方法,以及数字PID控制器、最少拍控制系统、达林算法、状态变量设计法等设计方法及其各种改进算法。重点突出计算机控制系统输入输出通道接口的设计方法和典型控制系统的设计案例与实现方法等。

Probability and Statistics - 4th edition

Probability and Statistics - 4th edition

耗时3个月,近10W字的刷题笔记,多语言通吃,秒杀 80% Leetcode 题目!

学会了,offer收割机就是你~

Jack-Cui 1万+

[刷leetcode神器] IDEA 插件 leetcode editor

点击上方 Java学习之道,选择 设为星标每天18点,干货准时奉上!我们都知道,eclipse 已经被大多 Java 程序员抛弃,路转粉 IDEA 了。为什么会有这样子的趋势,除了 IDE...

Java学习之道 4万+

LeetCode刷题python详解

LeetCode刷题 最近想要练一练代码能力,得知LeetCode这个网站挺不错的,所以便开始刷题。 LeetCode中国网址 在这里主要就是练习一下python,其它编程语言可能基本不会涉及到。 从最简单的开始题——两数相加开始。 先附带一下题目: 首先是最简单也是最容易想到的解法: class Solution(object): def twoSum(self, nums, target): """ :type nums: List[int] :

w0714的博客 1万+

刷力扣

刷力扣序言350. 两个数组的交集 II 序言 蓝桥杯的题目没有题解,力扣不仅有的题有官方题解而且还有大量用户的题解,所以就转战力扣。虽说力扣有题解,但毕竟不是我自己写的,我会把自己写的代码贴到这里,留作以后复习。为了适应蓝桥杯,Python环境是3.6.5,没有安装任何第三方库。 350. 两个数组的交集 II 给定两个数组,编写一个函数来计算它们的交集。 示例 1: 输入:nums1 = [1,2,2,1], nums2 = [2,2] 输出:[2,2] 示例 2: 输入:nums1 = [4,9,5

超小墨的博客 2373

【PythonCode】力扣Leetcode6~10题Python版

Leetcode6-10

weixin_43790276的博客 1859

leetcode(力扣)刷题笔记(c++、python)【上】

力扣刷题顺序以及用不同语言解答过程

qq_43050258的博客 3698

如何高效使用gh_mirrors/leetcode21/leetcode:新手必备的LeetCode刷题指南

gh_mirrors/leetcode21/leetcode是一个专注于LeetCode算法题解的开源项目,提供了229道LeetCode题目的C++/Java/Python/Sql/Shell多种语言解决方案及详细笔记,是新手高效刷题、提升算法能力的实用工具。 ## 快速开始:3步上手刷题 ### 1. 获取项目代码 首先需要将项目克隆到本地,打开终端执行以下命令: ```bash git

gitblog_00827的博客 701

【PythonCode】力扣Leetcode26~30题Python版

力扣26-30

weixin_43790276的博客 2012
上一篇: python 实现进制转化
下一篇: python 刷 leetcode 题目(22)
凌疯墨子
博客等级 码龄11年 47粉丝 81原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值