蓝桥杯算法|练习记录
位运算
-
按位与运算符(&)
- 运算规则:两位同时为1,结果才为1,否则结果为0。例如, -3(在计算机中表示为1101)&5(0101) = 0101(即十进制的1),这里负数在计算机中用补码表示2。结果不会变大。
- 应用示例:
- 取指定位:比如取数X = 10101110的低4位,只需要另找一个数Y,令Y的低4位为1,其余位为0(即Y = 00001111),然后将X与Y进行按位与运算(X&Y = 00001110)即可得到X的指定位。
- 判断奇偶:可以根据一个数与1进行按位与运算的结果判断奇偶性,因为奇数的二进制最后一位为1,偶数最后一位为0,例如,5(101)&1(001) = 1,所以5是奇数。
-
按位或运算符(|)
- 运算规则:将两个操作数化为二进制后并将对应的每一位分别进行逻辑或操作,只要有一个为1结果就为1,即0|0 = 0;0|1 = 1;1|0 = 1;1|1 = 1。结果不会变小。
- 应用示例:常用于对一个数据的某些位设置为1。
-
按位异或运算符(^)
- 运算规则:对应位相同则运算结果为0,否则为1,即0^0 = 0;0^1 = 1;1^0 = 1;1^1 = 0。例如,任何二进制数与零异或,都会等于其本身,即A^0 = A。不会进位。
- 应用示例:
- 翻转指定位:比如将数X = 10101110的低4位进行翻转,只需要找到一个数Y,令Y的低4位为1,其余位为0(即Y = 00001111),然后将X与Y进行异或运算(X^Y = 10100001)即可得到。
- 具有自反性:A^B^B = A(由结合律可推:A^B^B = A^(B^B)=A^0 = A)。
-
按位取反运算符(~)
- 运算规则:对每一位进行取反。例如,求x的相反数可以用x = (~x + 1)。
-
左移运算符(<<)
- 运算规则:将一个运算对象的各二进制位全部左移若干位(左边的二进制位丢弃,右边补0)。例如,设a = 10101110,a = a << 2将a的二进制位左移2位、右补0,即得a = 10111000。若左移时舍弃的高位不包含1,则每左移一位,相当于该数乘以2。
-
右移运算符(>>)
- 运算规则:将一个运算对象的各二进制位全部右移若干位,左补0或者左补1得看被移数是正还是负。例如,12(00001100)右移2位变为00000011(即3)。
相关文章:
蓝桥杯算法|练习记录
位运算 按位与运算符(&) 运算规则:两位同时为1,结果才为1,否则结果为0。例如, -3(在计算机中表示为1101)&5(0101) 0101(即十进制的1&…...

C语言 扫雷程序设计
目录 1.main函数 2.菜单打印menu函数 3.游戏game函数 4.宏定义 5.界面初始化 6.打印界面 7.设置雷 8.统计排查坐标周围雷的个数 9.排查雷 10.总代码 test.c代码 game.h代码 game.c代码 结语: 一个简单的扫雷游戏,通过宏定义可以修改行列的…...
CSS语言的文件操作
CSS语言文件操作浅析 CSS(层叠样式表)是一种用于描述HTML文档表现的样式表语言。它负责设置网页的视觉效果,包括文字、颜色、布局等。然而,CSS不仅仅是用于修饰页面,它在现代开发中的作用正变得愈发重要。在本文中&am…...

前端-计算机网络篇
一.网络分类 1.按照网络的作用范围进行分类 (1)广域网WAN(Wide Area Network) 广域网的作用范围通常为几十到几千公里,因而有时也称为远程网(long haul network)。广域网是互联网的核心部分,其任务是长距离运送主机…...
行为分析:LSTM、3D CNN、SlowFast Networks。这三者的优缺点
在行为分析任务中,**LSTM**、**3D CNN** 和 **SlowFast Networks** 是三种常用的深度学习模型。它们各有优缺点,适用于不同的场景和需求。以下是它们的详细对比: --- ### **1. LSTM(Long Short-Term Memory)** LSTM …...

【HarmonyOS NEXT】鸿蒙应用使用后台任务之长时任务,解决屏幕录制音乐播放等操作不被挂起
【HarmonyOS NEXT】鸿蒙应用使用后台任务之长时任务,解决屏幕录制音乐播放等操作不被挂起 一、前言 1.后台是什么? 了解后台任务和长时任务前,我们需要先明白鸿蒙的后台特性:所谓的后台,指的是设备返回主界面、锁屏、…...

STM32-WWDG/IWDG看门狗
WWDG/IWDG一旦开启不能关闭,可通过选项字节在上电时启动硬件看门狗,看门狗计数只能写入不能读取。看门狗启用时,T6bit必须置1,防止立即重置。 一、原理 独立看门狗-超时复位 窗口看门狗-喂狗(重置计数器,…...
基于视觉惯性 SLAM(VSLAM)、相机和 IMU 数据的融合执行 6 自由度位姿跟踪
案例来源:https://spectacularai.github.io/docs/sdk/wrappers/oak.html 适配相机:带IMU的 OAK-D 系列相机 基于视觉惯性 SLAM(VSLAM)、相机和 IMU 数据的融合执行 6 自由度位姿跟踪 ~~~~~~~(分界线)~~~~~…...

Matlab仿真径向受压圆盘光弹图像
Matlab仿真径向受压圆盘光弹图像-十步相移法 主要参数 % 定义圆盘参数 R 15; % 圆盘半径,单位:mm h 5; % 圆盘厚度,单位:mm P 300; % 径向受压载荷大小,单位ÿ…...

网络安全抓包
#知识点: 1、抓包技术应用意义 //有些应用或者目标是看不到的,这时候就要进行抓包 2、抓包技术应用对象 //app,小程序 3、抓包技术应用协议 //http,socket 4、抓包技术应用支持 5、封包技术应用意义 总结点:学会不同对象采用…...
WebSocket 测试调试:工具与实践
在前五篇文章中,我们深入探讨了 WebSocket 的基础原理、服务端开发、客户端实现、安全实践和性能优化。今天,让我们把重点放在测试和调试上,看看如何确保 WebSocket 应用的质量和可靠性。我曾在一个实时通讯项目中,通过完善的测试和调试策略,将线上问题的发现时间从小时级缩短到…...

ArmSoM RK3588/RK3576核心板,开发板网络设置
ArmSoM系列产品都搭配了以太网口或WIFI模块,PCIE转以太网模块、 USB转以太网模块等,这样我们的网络需求就不止是上网这么简单了,可以衍生出多种不同的玩法。 1. 网络连接 连接互联网或者组成局域网都需要满足一个前提–设备需要获取到ip&a…...

【学Rust开发CAD】1 环境搭建
文章目录 一、搭建C/C编译环境二、安装Rust三、配置 PATH 环境变量四、验证安装结果五、安装编辑工具 一、搭建C/C编译环境 Rust 的编译工具依赖 C 语言的编译工具,这意味着你的电脑上至少已经存在一个 C 语言的编译环境。如果你使用的是 Linux 系统,往…...

数据结构与算法之二叉树: LeetCode 108. 将有序数组转换为二叉搜索树 (Ts版)
将有序数组转换为二叉搜索树 https://leetcode.cn/problems/convert-sorted-array-to-binary-search-tree/description/ 描述 给你一个整数数组 nums ,其中元素已经按 升序 排列请你将其转换为一棵 平衡 二叉搜索树 示例 1 输入:nums [-10,-3,0,5,9…...

Java 多线程之@Async
SpringBoot 中使用 Async 使用 Async 注解步骤: 添加 EnableAsync 注解。在主类上或者 某个类上,否则,异步方法不会生效 添加 Async注解。在异步方法上添加此注解。异步方法不能被 static 修饰需要自定义线程池,则可以配置线程池…...

代码随想录day38 动态规划6
题目:322.零钱兑换 279.完全平方数 139.单词拆分 多重背包 背包总结 需要重做:322,139 322. 零钱兑换 思路:零钱,可取多次-》完全背包。 注意: 五部: 1.dp[j]:价值为j的时候,最…...
LabVIEW无标题的模态VI窗口的白框怎么去除?
在LabVIEW中,如果你遇到无标题的模态(modal)VI窗口显示有一个白框,通常是由于VI界面的一些属性或者控件设置问题导致的。为了去除这个白框,可以尝试以下几种方法: 1. 检查VI窗口属性设置 确保你的VI窗口属…...
iOS - 原子操作
在 Objective-C 运行时中,原子操作主要通过以下几种方式实现: 1. 基本原子操作 // 原子操作的基本实现 #if __has_feature(c_atomic)#define OSAtomicIncrement32(p) __c11_atomic_add((_Atomic(int32_t) *)(p), 1, __ATOMIC_RELAXED) #define …...
Go语言的语法
Go语言入门与实战 引言 在当今的开发环境中,随着互联网的快速发展,程序员们面临着越来越复杂的系统需求。针对这些需求,Go语言(又称Golang)作为一种新的编程语言应运而生。Go语言由Google开发,它具有简单…...

【MySQL 保姆级教学】用户管理和数据库权限(16)
数据库账户管理是指对数据库用户进行创建、修改和删除等操作,以控制用户对数据库的访问权限。通过账户管理,可以设置用户名、密码、主机地址等信息,确保数据库的安全性和可控性。例如,使用 CREATE USER 创建用户,ALTER…...

手游刚开服就被攻击怎么办?如何防御DDoS?
开服初期是手游最脆弱的阶段,极易成为DDoS攻击的目标。一旦遭遇攻击,可能导致服务器瘫痪、玩家流失,甚至造成巨大经济损失。本文为开发者提供一套简洁有效的应急与防御方案,帮助快速应对并构建长期防护体系。 一、遭遇攻击的紧急应…...
利用ngx_stream_return_module构建简易 TCP/UDP 响应网关
一、模块概述 ngx_stream_return_module 提供了一个极简的指令: return <value>;在收到客户端连接后,立即将 <value> 写回并关闭连接。<value> 支持内嵌文本和内置变量(如 $time_iso8601、$remote_addr 等)&a…...

YSYX学习记录(八)
C语言,练习0: 先创建一个文件夹,我用的是物理机: 安装build-essential 练习1: 我注释掉了 #include <stdio.h> 出现下面错误 在你的文本编辑器中打开ex1文件,随机修改或删除一部分,之后…...
基础测试工具使用经验
背景 vtune,perf, nsight system等基础测试工具,都是用过的,但是没有记录,都逐渐忘了。所以写这篇博客总结记录一下,只要以后发现新的用法,就记得来编辑补充一下 perf 比较基础的用法: 先改这…...
【android bluetooth 框架分析 04】【bt-framework 层详解 1】【BluetoothProperties介绍】
1. BluetoothProperties介绍 libsysprop/srcs/android/sysprop/BluetoothProperties.sysprop BluetoothProperties.sysprop 是 Android AOSP 中的一种 系统属性定义文件(System Property Definition File),用于声明和管理 Bluetooth 模块相…...

微服务商城-商品微服务
数据表 CREATE TABLE product (id bigint(20) UNSIGNED NOT NULL AUTO_INCREMENT COMMENT 商品id,cateid smallint(6) UNSIGNED NOT NULL DEFAULT 0 COMMENT 类别Id,name varchar(100) NOT NULL DEFAULT COMMENT 商品名称,subtitle varchar(200) NOT NULL DEFAULT COMMENT 商…...
CSS设置元素的宽度根据其内容自动调整
width: fit-content 是 CSS 中的一个属性值,用于设置元素的宽度根据其内容自动调整,确保宽度刚好容纳内容而不会超出。 效果对比 默认情况(width: auto): 块级元素(如 <div>)会占满父容器…...

HarmonyOS运动开发:如何用mpchart绘制运动配速图表
##鸿蒙核心技术##运动开发##Sensor Service Kit(传感器服务)# 前言 在运动类应用中,运动数据的可视化是提升用户体验的重要环节。通过直观的图表展示运动过程中的关键数据,如配速、距离、卡路里消耗等,用户可以更清晰…...
Git常用命令完全指南:从入门到精通
Git常用命令完全指南:从入门到精通 一、基础配置命令 1. 用户信息配置 # 设置全局用户名 git config --global user.name "你的名字"# 设置全局邮箱 git config --global user.email "你的邮箱example.com"# 查看所有配置 git config --list…...

(一)单例模式
一、前言 单例模式属于六大创建型模式,即在软件设计过程中,主要关注创建对象的结果,并不关心创建对象的过程及细节。创建型设计模式将类对象的实例化过程进行抽象化接口设计,从而隐藏了类对象的实例是如何被创建的,封装了软件系统使用的具体对象类型。 六大创建型模式包括…...