10-18每日一题:Leetcode476. 数字的补数

【功能安全】软件安全架构 目录01 软件安全架构介绍02 软件架构设计模板03 软件架构设计示例 软件架构设计的目的 软件架构设计的原则 软件架构设计输入与输出 软件架构设计的要求 注:软件架构设计和软件安全要求之间的双向可追溯性。软件架构设计原则: 软件架构静态/动态设计(参考秒尼科技术) 软件架构静态设计 软件架构动态设计 软件分层架构设计 软件架构设计安全机制错误探测的安全机制 其中:数据的范围检查指输入输出数据的范围进行检查,例如:在程序中我们可以通过数据范围来排除数据的正确性;合理性检查 例如:使用参 阅读详情

Leetcode476. 数字的补数

思路一:每一位按位取反

要把所有数字取反,我们先找到numnumnum的最高位,将最高位后面的所有位取反即可

class Solution {
public:
    int findComplement(int num) {
        int pos;
        for (int i = 31; i >= 0; i -- ) {
            if (num >> i & 1) {
                pos = i;
                break;
            }
        }

        int res = 0;
        for (int i = 0; i < pos; i ++ )
            if ((num >> i & 1) == 0) res |= 1 << i;
        return res;
    }
};

思路二:使用位运算

既然是取反,那么我们想一想可不可以使用位运算来计算呢?
如果我们选择直接取反,那么numnumnum最高位之前的所有位也会被取反,所以我们还是要通过遍历方式找到numnumnum的最高位,为xxx
找到之后,能直接用numnumnum和xxx取&嘛?这样只能得到最高位,因此我们将xxx减一,这样就可以保留numnumnum除最高位后面的所有取反的位数,因为最高位取反一定是0,所以不需要改动

class Solution {
public:
    int findComplement(int num) {
        int x = 0;
        for (int i = num; i != 0; i -= i & -i) x = i;
        return ~num & (x - 1);
    }
};
18、动态系统响应分析 本文系统地介绍了动态系统响应的分析方法,涵盖传递函数建模、特殊输入下的响应特性(如脉冲和阶跃响应)、终值与初值定理的应用、系统直流增益的计算,并深入探讨了一阶和二阶系统的时域特性。通过实例分析与MATLAB仿真,展示了不同参数对系统行为的影响。文章还总结了系统响应在控制设计与故障诊断中的实际应用,并展望了多变量、非线性及实时响应分析的未来研究方向。配合流程图,提供了清晰的系统分析与设计路径。 阅读详情

相关推荐

Sigmastar平台WDR调试实战:从参数解析到鬼影消除的完整指南

本文提供了Sigmastar平台宽动态(WDR)技术的实战调试指南。针对逆光、运动场景下的核心痛点,系统性地解析了从多曝光采集、HDR融合到色调映射的完整管线,并重点阐述了如何通过调整曝光比、运动阈值与调整曲线等关键参数,有效消除运动鬼影、平衡暗部噪声与细节,最终实现清晰稳定的图像效果。

Jerry的专栏 930

leetcode 每日一题 20211018 476. 数字的补数

leetcode 每日一题 2021/10/18 476. 数字的补数 难度:简单 题目: 对整数的二进制表示取反(0 变 1 ,1 变 0)后,再转换为十进制表示,可以得到这个整数的补数。 例如,整数 5 的二进制表示是 “101” ,取反后得到 “010” ,再转回十进制表示得到补数 2 。 给你一个整数 num ,输出它的补数。 示例 1: 输入:num = 5 输出:2 解释:5 的二进制表示为 101(没有前导零位),其补数为 010。所以你需要输出 2 。 示例 2: 输入:num = 1 输出

h88888888888的博客 219

Adaboost入门教程——最通俗易懂的原理介绍(图文实例)

Adaboost入门教程——最通俗易懂的原理介绍(图文实例)

Max的杂物仓 11万+

力扣每日一题2021-10-18数字的补数

数字的补数476.数字的补数题目描述思路:异或运算 476.数字的补数 题目描述 数字的补数 思路:异或运算 依据题意,需要把num二进制表示的每一位取反,所以将num转为二进制后进行异或运算即可。 class Solution: def findComplement(self, num: int) -> int: # 异或 return num^(2**(len(bin(num))-2)-1) ...

wcy1034036507的博客 135

SAP PP工艺路线Routing保姆级配置指南:从CA01创建到替代/并行顺序实战

本文详细解析SAP PP模块中工艺路线(Routing)的配置与应用,从基础创建(CA01)到高级功能如替代顺序和并行顺序的实战操作。通过真实案例演示,帮助用户掌握SAP PP工艺路线的精细化管理,提升生产流程效率。

weixin_30898555的博客 389

【STM32】从零构建串口IAP框架:BootLoader与App双向跳转实战解析

本文详细解析了STM32串口IAP框架的构建,重点阐述了BootLoader与App双向跳转的实战原理与实现步骤。内容涵盖Flash分区规划、中断向量表重定向、通信协议设计及固件升级流程,并针对跳转失败、程序跑飞等常见问题提供了解决方案,帮助开发者掌握产品级远程升级的核心技术。

wind6的博客 839

21年10月第四周 力扣每日一题记录

本周每日一题 题目 lc476. 数字的补数 10-18 lc476. 数字的补数 对示例做这样一个事,求num+答案+1,结果刚好是2^n,然后再用几个测试用例,发现也是这样,所以这就是本题的规律 然后这个2^n是大于num的最小的n,所以答案如下 class Solution { public int findComplement(int num) { long n = 1; while(n<=num) n = n << 1;

或左的博客 235

基于LSTM语义分析的企业风险预测系统

在数字化时代,企业面临着前所未有的挑战和机遇,而风险管理作为确保企业稳定发展的关键一环,其重要性日益凸显。为了及时、准确地监测和分析企业相关的风险,并预测可能带来的风险,本文介绍了一种基于长短期记忆(LSTM)语义分析的企业风险预测系统。该系统利用深度学习技术,通过将收集到的企业数据进行预处理和分析,结合LSTM模型对文本进行深度语义分析,从而实现对潜在风险的预测和评估。系统设计方面,该系统包括数据预处理、LSTM模型构建与训练、风险预测以及可视化展示等模块。

qiufangtaowvnyyidtf的博客 1393

LeetCode 每日一题 2021/10/18-2021/10/24

记录了初步解题思路 以及本地实现代码;并不一定为最优 也希望大家能一起探讨 一起进步 目录10/18 476. 数字的补数10/19 211. 添加与搜索单词 - 数据结构设计10/20 453. 最小操作次数使数组元素相等10/21 66. 加一10/22 229. 求众数 II10/2310/24 10/18 476. 数字的补数 从最低位开始判断 base代表二进制当前位的数值 如果不是1 则加上base 将num右移一位 base左移一位 def findComplement(num):

AlphaTao的博客 186

STM32F407+LAN8720A+LwIP实战:FreeModbus TCP从机功能开发指南

本文详细介绍了基于STM32F407和LAN8720A硬件平台,结合LwIP协议栈实现FreeModbus TCP从机功能的开发指南。内容涵盖硬件连接、LwIP移植、FreeModbus TCP从机实现、任务调度及调试技巧,为工业控制领域的以太网通信开发提供实用参考。

weixin_29190651的博客 547

SAP 实施:Waterfall vs. Agile —— 一场“结构性矛盾“的深刻比较先说结论:在 SAP 世界里,这从来不是“谁更好“的宗教问题,而是“你的项目 DNA 是什么“的战略选择。​

SAP 实施:Waterfall vs. Agile —— 一场"结构性矛盾"的深刻比较 先说结论:在 SAP 世界里,这从来不是"谁更好"的宗教问题,而是"你的项目 DNA 是什么"的战略选择。​ SAP 早已用 SAP Activate​ 给出了官方态度——它不是纯 Agile,也不是回头去搞旧 Waterfall,而是一个带质量门的混合架构。 1. 先回到本质:两者解决的是不同维度的风险 维度 Waterfall(传统 ASAP 路线)​ Agile(SCRUM/Kanban 式迭代)​

金牌架构师 337

LeetCode 230. 二叉搜索树中第K小的元素 / 476. 数字的补数 / 211. 添加与搜索单词 - 数据结构设计(字典树)

230. 二叉搜索树中第K小的元素 2021.10.17 每日一题 题目描述 给定一个二叉搜索树的根节点 root ,和一个整数 k ,请你设计一个算法查找其中第 k 个最小元素(从 1 开始计数)。 示例 1: 输入:root = [3,1,4,null,2], k = 1 输出:1 示例 2: 输入:root = [5,3,6,2,4,null,null,1], k = 3 输出:3 提示: 树中的节点数为 n 。 1 <= k <= n <= 10^4 0 <=

windyjcy的博客 214

C# + NAudio:构建支持实时音频处理的语音聊天应用(含回声消除)

本文介绍了如何利用C#和NAudio库开发实时语音聊天应用,重点实现回声消除功能。首先概述了NAudio库在音频处理中的作用,包括音频录制、播放和实时处理能力。然后详细讲解了构建基础语音聊天应用的过程,包括麦克风录制和扬声器播放的实现。接着深入探讨了回声消除的原理和实现方法,提出通过比较麦克风输入和扬声器输出的音频信号来消除回声,并给出了核心代码示例。最后,文章还讨论了性能优化方向,如多线程处理和网络传输扩展。该方案为开发高质量实时语音应用提供了实用参考。

这里只有干货:从 Modbus 通信到 MES 对接,从 YOLO 训练到工控机部署,带你搞定工业软件开发全流程。 1014

LeetCode每日一题:2月19日~2月23日

煎饼排序 每一次翻转将前n个数最大值放到序列最后,保证可以在2*n次数下翻转完成 class Solution { public: vector<int> pancakeSort(vector<int>& a) { vector<int> res; for (int n = a.size(); n >= 2; n -- ) { int k = max_element(a.begin(), a.b

释然的成长之路 7981

RU DOS版、EFI版32bit/64bit BIOS常用工具

DOS版、EFI版的RU工具,可用来查看IO、MEM、PCI、SMBIOS等资源。亲测在EFI SHELL下可用。

汉书HE8,好用的汇编代码编写工具

汉书HE8,好用的汇编代码编写工具早期编写汇编代码所用功能强大

9-17每日一题:Leetcode36. 有效的数独

Leetcode36. 有效的数独 class Solution { public: bool isValidSudoku(vector<vector<char>>& board) { bool st[9]; // 判断行 for (int i = 0; i < 9; i ++ ) { memset(st, 0, sizeof st); for (int j = 0

释然的成长之路 4503

Probability and Statistics - 4th edition

Probability and Statistics - 4th edition

11-26 每日一题

Leetcode 700 二叉搜索树中的搜索 思路:BST性质,爆搜 时间复杂度:O(n)O(n)O(n),最坏情况 空间复杂度:O(n)O(n)O(n),最坏情况 /** * Definition for a binary tree node. * struct TreeNode { * int val; * TreeNode *left; * TreeNode *right; * TreeNode() : val(0), left(nullptr), righ

释然的成长之路 4417

VC中sqlite的使用

在VC中对sqlite的使用,实现数据库大批数据的快速插入,读取数据库中的数据在ListCtrl中显示

11-21每日一题:LeetCode 559. N叉树的最大深度

LeetCode 559. N叉树的最大深度 思路:搜索 挨个搜索每个结点的孩子,返回孩子结点深度最大值+1+1+1 时间复杂度:O(n)O(n)O(n) 空间复杂度:O(n)O(n)O(n) /* // Definition for a Node. class Node { public: int val; vector<Node*> children; Node() {} Node(int _val) { val = _val; }

释然的成长之路 4309

11-18每日一题:563. 二叉树的坡度

563. 二叉树的坡度 思路:递归 遍历一遍结点,返回以当前结点为根结点的权值总和,每一次遍历过程中更新答案 时间复杂度:O(n)O(n)O(n) 空间复杂度:O(h)O(h)O(h)树的深度 /** * Definition for a binary tree node. * struct TreeNode { * int val; * TreeNode *left; * TreeNode *right; * TreeNode() : val(0), left(

释然的成长之路 4004

LeetCode每日一题:744. 寻找比目标字母大的最小字母

744. 寻找比目标字母大的最小字母 线性或者二分查找,但是数据范围很小,差别不大 class Solution { public: char nextGreatestLetter(vector<char>& letters, char target) { if (target >= letters.back()) return letters[0]; else return *upper_bound(letters

释然的成长之路 1538

11-08:Leetcode 598. 范围求和 II

Leetcode 598. 范围求和 II 思路:思维 不断取交集,最后区域一定是一个矩形,保留长和宽就好 class Solution { public: int maxCount(int m, int n, vector<vector<int>>& ops) { for (auto& t : ops) { m = min(m, t[0]); n = min(n, t[1]);

释然的成长之路 1385

LeetCode 每日一题:606. 根据二叉树创建字符串

606. 根据二叉树创建字符串 二叉树的前序遍历,当左子节点或者右节点非空的时候需要添加左子节点的括号,如果右子节点非空才需要添加右子节点的括号 /** * Definition for a binary tree node. * struct TreeNode { * int val; * TreeNode *left; * TreeNode *right; * TreeNode() : val(0), left(nullptr), right(nullptr)

释然的成长之路 782

LeetCode 每日一题:393. UTF-8 编码验证

393. UTF-8 编码验证 模拟,首先一个字符的情况判断第一位是不是0即可,然后判断前5位几个1,如果1个或者5个1都不合法,同时判断后面几个数是否符合10开头,当遍历完所有数字之后都合法返回true class Solution { public: int get(int x, int k) { return x >> k & 1; } bool validUtf8(vector<int>& data) {

释然的成长之路 765

LeetCode 每日一题:172. 阶乘后的零

172. 阶乘后的零 统计每个数中因子2和因子5的个数,因为只有这两个因子才会产生尾0 class Solution { public: int trailingZeroes(int n) { int res = 0; int cnt2 = 0, cnt5 = 0; for (int i = 1; i <= n; i ++ ) { int j = i; while (j % 2 == 0) {

释然的成长之路 703

LeetCode 每日一题:2044. 统计按位或能得到最大值的子集数目

2044. 统计按位或能得到最大值的子集数目 DFS,每次考虑选择这个数或者不选。 时间复杂度:O(2n)O(2^n)O(2n) 空间复杂度:O(n)O(n)O(n) class Solution { public: vector<int> a; int maxn, ans; void dfs(int u, int v) { if (u == a.size()) { if (v > maxn) {

释然的成长之路 686

LeetCode每日一题:LeetCode 720. 词典中最长的单词

LeetCode 720. 词典中最长的单词 方法一:暴力哈希 存储每个单词哈希表中,检查每一个单词前缀是否都出现过,返回字典序最小长度最长的单词 时间复杂度:O(n∗30)O(n*30)O(n∗30) 空间复杂度:O(n∗30)O(n*30)O(n∗30) class Solution { public: set<string> S; string ans; bool check(string str) { for (int i = 1; i <

释然的成长之路 678

LeetCode 每日一题:653. 两数之和 IV - 输入 BST

653. 两数之和 IV - 输入 BST 方法一:DFS+哈希 通过遍历所有结点,边查询边插入集合的方式,其实这种方法没有用到BST树的性质,任何一个二叉树都可以 时间复杂度:O(n)O(n)O(n) 空间复杂度:O(n)O(n)O(n) /** * Definition for a binary tree node. * struct TreeNode { * int val; * TreeNode *left; * TreeNode *right; * Tr

释然的成长之路 669
上一篇: 10-17每日一题:230. 二叉搜索树中第K小的元素
下一篇: 10-19每日一题:Leetcode211. 添加与搜索单词 - 数据结构设计
Shirandexiaowo
博客等级 码龄7年 45粉丝 314原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Shirandexiaowo

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值