当前位置: 首页 > news >正文

个人笔记--python用tanh画圆形,正方形,长方形(epsilon界面宽度)

用tanh函数画图

圆形

在这里插入图片描述

import numpy as np
import matplotlib.pyplot as plt# 创建一个二维网格
xx = np.linspace(-1, 1, 1000)
yy = np.linspace(-1, 1, 1000)
x_i, y_i = np.meshgrid(xx, yy)# 圆的半径和中心
r = 0.4
center_x, center_y = 0, 0  # 假设圆心在(0, 0)# 计算每个网格点到圆心的距离
distance = np.sqrt((x_i - center_x) ** 2 + (y_i - center_y) ** 2)# 使用tanh函数来近似表示半圆区域
# 注意:tanh函数不能直接用于表示半圆,但我们可以通过设置阈值来近似表示
epsilon = 0.01 # 控制tanh函数的“陡峭度”
u0 = 0.5 * (1 + np.tanh((r - distance) / epsilon))
u0[distance > r] = -1  # 强制圆外的值为-1# 绘制结果
fig, ax = plt.subplots()
p = ax.pcolormesh(x_i, y_i, u0, cmap='viridis', shading='auto')
ax.set_aspect('equal', 'box')  # 保持x和y轴的比例相同
fig.colorbar(p, ax=ax, label='u0 Value')# 设置标题和坐标轴标签
plt.title('Approximate Half Circle using tanh')
plt.xlabel('X')
plt.ylabel('Y')# 显示图形
plt.show()

半圆

在这里插入图片描述

import numpy as np
import matplotlib.pyplot as plt# 创建一个二维网格
xx = np.linspace(-1, 1, 1000)
yy = np.linspace(-1, 1, 1000)
x_i, y_i = np.meshgrid(xx, yy)# 圆的半径和中心
r = 0.4
center_x, center_y = 0, -1  # 假设圆心在(0, -1)# 计算每个网格点到圆心的距离
distance = np.sqrt((x_i - center_x) ** 2 + (y_i - center_y) ** 2)# 使用tanh函数来近似表示半圆区域
# 注意:tanh函数不能直接用于表示半圆,但我们可以通过设置阈值来近似表示
epsilon = 0.01 # 控制tanh函数的“陡峭度”
u0 = 0.5 * (1 + np.tanh((r - distance) / epsilon))
u0[distance > r] = -1  # 强制圆外的值为-1# 绘制结果
fig, ax = plt.subplots()
p = ax.pcolormesh(x_i, y_i, u0, cmap='viridis', shading='auto')
ax.set_aspect('equal', 'box')  # 保持x和y轴的比例相同
fig.colorbar(p, ax=ax, label='u0 Value')# 设置标题和坐标轴标签
plt.title('Approximate Half Circle using tanh')
plt.xlabel('X')
plt.ylabel('Y')# 显示图形
plt.show()

两个圆形

在这里插入图片描述
在这里插入图片描述

import numpy as np
import matplotlib.pyplot as plt# 创建一个二维网格
xx = np.linspace(0, 1, 1000)
yy = np.linspace(0, 1, 1000)
x_i, y_i = np.meshgrid(xx, yy)# 圆的半径和中心
r1 = 0.15  # 如果要分开点,就设为0.14
r2 = 0.15  # 如果要分开点,就设为0.14
center_x1, center_y1 = 0.35, 0.5  # 圆心1
center_x2, center_y2 = 0.65, 0.5  # 圆心2# 计算每个网格点到圆心的距离
distance1 = np.sqrt((x_i - center_x1) ** 2 + (y_i - center_y1) ** 2)
distance2 = np.sqrt((x_i - center_x2) ** 2 + (y_i - center_y2) ** 2)# 使用tanh函数来近似表示半圆区域
# 注意:tanh函数不能直接用于表示半圆,但我们可以通设置阈值来近似表示
epsilon = 0.01 # 控制tanh函数的“陡峭度”
phi1 = np.tanh((r1 - distance1) / (2 * epsilon))
phi2 = np.tanh((r2 - distance2) / (2 * epsilon))u0 = np.maximum(phi1, phi2)
# u0 = 1 * (1 + phi1 + phi2)  # 两种都可以生成两个圆# 分别找出距离两个圆心都大于半径的点的索引
outside_circle1 = distance1 > r1
outside_circle2 = distance2 > r2# 使用逻辑与来找出两个条件都满足的点
outside_both_circles = np.logical_and(outside_circle1, outside_circle2)# 将这些点对应的u0值设置为-1
u0[outside_both_circles] = -1# 绘制结果
fig, ax = plt.subplots()
p = ax.pcolormesh(x_i, y_i, u0, cmap='viridis', shading='auto')
ax.set_aspect('equal', 'box')  # 保持x和y轴的比例相同
fig.colorbar(p, ax=ax, label='u0 Value')# 设置标题和坐标轴标签
plt.title('Approximate Half Circle using tanh')
plt.xlabel('X')
plt.ylabel('Y')# 显示图形
plt.show()

正方形(不带界面过渡)

在这里插入图片描述

import numpy as np
import matplotlib.pyplot as plt# 创建一个二维网格
xx = np.linspace(-1, 1, 1000)
yy = np.linspace(-1, 1, 1000)
x_i, y_i = np.meshgrid(xx, yy)# 正方形的中心和边长
center_x, center_y = 0, 0  # 假设正方形中心在(0, 0),为了简化计算
side_length = 0.5  # 正方形边长的一半# 使用tanh函数来近似正方形的四个边界
# 注意:这不是一个完美的正方形,只是一个近似
epsilon = 0.01  # 控制tanh函数的“陡峭度”# 近似上边界
u_top = 0.5 * (1 + np.tanh((side_length - np.abs(y_i - center_y)) / epsilon))
# 近似下边界
u_bottom = 0.5 * (1 + np.tanh((side_length - np.abs(y_i + center_y)) / epsilon))
# 近似左边界
u_left = 0.5 * (1 + np.tanh((side_length - np.abs(x_i - center_x)) / epsilon))
# 近似右边界
u_right = 0.5 * (1 + np.tanh((side_length - np.abs(x_i + center_x)) / epsilon))# 四个边界的交集(即正方形内部)应取得高值
u0 = np.minimum(np.minimum(u_top, u_bottom), np.minimum(u_left, u_right))
u0[u0 < 0.99] = -1  # 强制非正方形内部的值为-1(可调整阈值)
u0[u0 >= 0.99] = 1  # 强制正方形内部的值为1(可调整阈值)# 绘制结果
fig, ax = plt.subplots()
p = ax.pcolormesh(x_i, y_i, u0, cmap='viridis', shading='auto')
ax.set_aspect('equal', 'box')  # 保持x和y轴的比例相同
fig.colorbar(p, ax=ax, label='u0 Value')# 设置标题和坐标轴标签
plt.title('Approximate Square using tanh')
plt.xlabel('X')
plt.ylabel('Y')# 显示图形
plt.show()

长方形(不带界面过渡)

在这里插入图片描述

import numpy as np
import matplotlib.pyplot as plt# 创建一个二维网格
xx = np.linspace(-1, 1, 1000)
yy = np.linspace(-1, 1, 1000)
x_i, y_i = np.meshgrid(xx, yy)# 长方形的中心和尺寸
center_x, center_y = 0, 0  # 假设长方形中心在(0, 0)
width = 0.6  # 长方形的宽度
height = 0.4  # 长方形的高度
half_width = width / 2
half_height = height / 2# 使用tanh函数来近似长方形的四个边界
epsilon = 0.01  # 控制tanh函数的“陡峭度”# 近似上边界
u_top = 0.5 * (1 + np.tanh((half_height - (y_i - center_y)) / epsilon))
# 近似下边界
u_bottom = 0.5 * (1 + np.tanh((half_height - (center_y - y_i)) / epsilon))
# 近似左边界
u_left = 0.5 * (1 + np.tanh((half_width - (x_i - center_x)) / epsilon))
# 近似右边界
u_right = 0.5 * (1 + np.tanh((half_width - (center_x - x_i)) / epsilon))# 长方形的内部是四个边界的交集,取四个边界中的最小值
u0 = np.minimum.reduce([u_top, u_bottom, u_left, u_right])
u0[u0 < 0.99] = -1  # 强制非长方形内部的值为-1(可调整阈值)
u0[u0 >= 0.99] = 1  # 强制长方形内部的值为1(可调整阈值)# 绘制结果
fig, ax = plt.subplots()
p = ax.pcolormesh(x_i, y_i, u0, cmap='viridis', shading='auto')
ax.set_aspect('equal', 'box')  # 保持x和y轴的比例相同
fig.colorbar(p, ax=ax, label='u0 Value')# 设置标题和坐标轴标签
plt.title('Approximate Rectangle using tanh')
plt.xlabel('X')
plt.ylabel('Y')# 显示图形
plt.show()

边界上的长方形(不带界面过渡)

在这里插入图片描述

import numpy as np
import matplotlib.pyplot as plt# 创建一个二维网格
xx = np.linspace(-0.5, 0.5, 1000)
yy = np.linspace(0, 0.5, 1000)
x_i, y_i = np.meshgrid(xx, yy)# 长方形的中心和尺寸
center_x, center_y = 0, 0.0625  # 假设长方形中心在(0, 0)
width = 0.5  # 长方形的宽度(长)
height = 0.125  # 长方形的高度
half_width = width / 2
half_height = height / 2# 使用tanh函数来近似长方形的四个边界
epsilon = 0.01  # 控制tanh函数的“陡峭度”# 近似上边界
u_top = 1 * (1 + np.tanh((half_height - (y_i - center_y)) / epsilon))
# 近似下边界
u_bottom = 1 * (1 + np.tanh((half_height - (center_y - y_i)) / epsilon))
# 近似左边界
u_left = 1 * (1 + np.tanh((half_width - (x_i - center_x)) / epsilon))
# 近似右边界
u_right = 1 * (1 + np.tanh((half_width - (center_x - x_i)) / epsilon))# 长方形的内部是四个边界的交集,取四个边界中的最小值
u0 = np.minimum.reduce([u_top, u_bottom, u_left, u_right])
u0[u0 < 0.99] = -1  # 强制非长方形内部的值为-1(可调整阈值)
u0[u0 >= 0.99] = 1  # 强制长方形内部的值为1(可调整阈值)# # 绘制结果
# fig, ax = plt.subplots()
# p = ax.pcolormesh(x_i, y_i, u0, cmap='viridis', shading='auto')
# ax.set_aspect('equal', 'box')  # 保持x和y轴的比例相同
# fig.colorbar(p, ax=ax, label='u0 Value')
#
# # 设置标题和坐标轴标签
# plt.title('Approximate Rectangle using tanh')
# plt.xlabel('X')
# plt.ylabel('Y')
#
# # 显示图形
# plt.grid()
# plt.show()# 估算角点位置(这里只是估算,不是精确值)
# 左上角
x_left_top, y_left_top = center_x - half_width, center_y + half_height
# 右上角
x_right_top, y_right_top = center_x + half_width, center_y + half_height
# 左下角
x_left_bottom, y_left_bottom = center_x - half_width, center_y - half_height
# 右下角
x_right_bottom, y_right_bottom = center_x + half_width, center_y - half_height# 绘制结果
fig, ax = plt.subplots()
p = ax.pcolormesh(x_i, y_i, u0, cmap='viridis', shading='auto')
ax.set_aspect('equal', 'box')  # 保持x和y轴的比例相同
fig.colorbar(p, ax=ax, label='u0 Value')# 设置标题和坐标轴标签
plt.title('Approximate Rectangle using tanh')
plt.xlabel('X')
plt.ylabel('Y')# 显示长方形四个角的坐标数字
plt.text(x_left_top, y_left_top, f'({x_left_top:.2f}, {y_left_top:.2f})', va='top', ha='right', color='red')
plt.text(x_right_top, y_right_top, f'({x_right_top:.2f}, {y_right_top:.2f})', va='top', ha='left', color='red')
plt.text(x_left_bottom, y_left_bottom, f'({x_left_bottom:.2f}, {y_left_bottom:.2f})', va='bottom', ha='right', color='red')
plt.text(x_right_bottom, y_right_bottom, f'({x_right_bottom:.2f}, {y_right_bottom:.2f})', va='bottom', ha='left', color='red')# 显示网格和图形
plt.grid()
plt.show()

边界上的长方形(带界面宽度)

在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

import numpy as np
import matplotlib.pyplot as plt# 创建一个二维网格
xx = np.linspace(-0.5, 0.5, 1000)
yy = np.linspace(0, 0.5, 1000)
x_i, y_i = np.meshgrid(xx, yy)# 长方形的中心和尺寸
center_x, center_y = 0, 0.0625  # 长方形中心
width = 0.5  # 长方形的宽度(长)
height = 0.125  # 长方形的高度
half_width = width / 2
half_height = height / 2# 使用tanh函数来近似长方形的四个边界
epsilon = 0.01  # 控制tanh函数的“陡峭度”# 近似上边界
u_top = np.tanh((half_height - (y_i - center_y)) / (2 * epsilon))
# # 近似下边界
# u_bottom = np.tanh((half_height - (center_y - y_i)) / (2 * epsilon))
u_bottom = np.ones((1000, 1000))
# 近似左边界
u_left = np.tanh((half_width - (x_i - center_x)) / (2 * epsilon))
# 近似右边界
u_right = np.tanh((half_width - (center_x - x_i)) / (2 * epsilon))# 长方形的内部是四个边界的交集,取四个边界中的最小值
u0 = np.minimum.reduce([u_top, u_bottom, u_left, u_right])# # 绘制结果
fig, ax = plt.subplots()
p = ax.pcolormesh(x_i, y_i, u0, cmap='viridis', shading='auto')
ax.set_aspect('equal', 'box')  # 保持x和y轴的比例相同
fig.colorbar(p, ax=ax, label='u0 Value')# 设置标题和坐标轴标签
plt.title('Approximate Rectangle using tanh')
plt.xlabel('X')
plt.ylabel('Y')# 显示图形
plt.grid()
plt.show()

相关文章:

个人笔记--python用tanh画圆形,正方形,长方形(epsilon界面宽度)

用tanh函数画图 圆形 import numpy as np import matplotlib.pyplot as plt# 创建一个二维网格 xx np.linspace(-1, 1, 1000) yy np.linspace(-1, 1, 1000) x_i, y_i np.meshgrid(xx, yy)# 圆的半径和中心 r 0.4 center_x, center_y 0, 0 # 假设圆心在(0, 0)# 计算每个网…...

学习Java,stringbuilder用法

有sb.append添加元素&#xff0c;sb.reverse反转内容&#xff0c;sb.tostring转换成字符串&#xff0c;sb.length计算长度。...

16-云原生监控体系-rabbitmq_exporter监控 RabbitMQ-[部署Dashborad告警规则实战]

文章目录 1. 二进制方式部署1.1. 二进制包下载和部署1.2. 配置1.2.1. 可用的环境变量1.2.2. 使用变量2. docker-compose 方式部署3. 配置到 Prometheus3. Metrics3.1. 全局3.2. 基础信息3.3. Queues3.3.1 Queues - Gauge3.3.2. Queues - Counter...

四大运营商频段-2024

四大运营商频段-2023 中国移动900MHz(Band8),889-904/934-949MHz&#xff1a;1.8GHz(Band3),1710-1735/1805-1830MHz&#xff1a;1.9GHz(Band39),1885-1915MHz&#xff1a;2GHz(Band34),2010-2025MHz&#xff1a;2.3GHz(Band40),2320-2370MHz&#xff1a;2.6GHz(Band41,n41),25…...

260只出现一次的数字

一&#xff1a;题目描述 二&#xff1a;思路讲解 三&#xff1a;代码 class Solution { public:vector<int> singleNumber(vector<int>& nums) {int sum 0;for(const int& e : nums){sum ^ e;}int l (sum INT_MIN ? sum : sum&(-sum));int sum1 0…...

【高阶数据结构(八)】跳表详解

&#x1f493;博主CSDN主页:杭电码农-NEO&#x1f493;   ⏩专栏分类:高阶数据结构专栏⏪   &#x1f69a;代码仓库:NEO的学习日记&#x1f69a;   &#x1f339;关注我&#x1faf5;带你学习更多数据结构   &#x1f51d;&#x1f51d; 高阶数据结构 1. 前言2. 跳表的概…...

用旧安卓手机当 linux 开发机

1. 下载 Termux (快速链接&#xff0c;如果失效或者要下载最新版请去github release 下载 ) 注意手机硬件&#xff0c;我这个是 64 的所以下 64 的 https://github.com/termux/termux-app/releases/download/v0.118.0/termux-app_v0.118.0github-debug_arm64-v8a.apk 2. 弄到…...

discuz如何添加主导航

大家好&#xff0c;今天教大家怎么样给discuz添加主导航。方法其实很简单&#xff0c;大家跟着我操作既可。一个网站的导航栏是非常重要的&#xff0c;一般用户进入网站的第一印象就是看网站的导航栏。如果大家想看效果的话可以搜索下网创有方&#xff0c;或者直接点击查看效果…...

[每日一练]患某种疾病的患者,正则表达式的匹配

该题目来源于力扣&#xff1a; 1527. 患某种疾病的患者 - 力扣&#xff08;LeetCode&#xff09; 题目要求&#xff1a; 患者信息表&#xff1a; Patients ----------------------- | Column Name | Type | ----------------------- | patient_id | int | | pati…...

PHP身份证识别接口、线上平台如何实现身份证实名认证功能?

线上平台实现身份证实名认证的功能&#xff0c;需要结合身份证识别接口来完成。首先&#xff0c;用户通过上传身份证图片或者拍照的方式实现证件信息的提取&#xff0c;身份证实名认证接口通过对提取到的证件信息进行核验&#xff0c;以此来实现线上用户身份的实名认证&#xf…...

若依:mybatis查询的结果未映射到实体类报null

开启驼峰命名转换&#xff1a; mapUnderscoreToCamelCase: true 我的是mtybatis配置开启驼峰命名转换不生效&#xff0c;还需要在MyBatisConfig中配置 // 配置mybatis自动转驼峰 生效 sessionFactory.getObject().getConfiguration().setMapUnderscoreToCamelCase(true)&#x…...

成都百洲文化传媒有限公司电商服务可信吗?

在当今数字化浪潮席卷之下&#xff0c;电商行业蓬勃发展&#xff0c;成为推动经济增长的重要引擎。在这一领域&#xff0c;成都百洲文化传媒有限公司凭借其专业的电商服务&#xff0c;迅速崛起&#xff0c;成为行业的佼佼者。该公司不仅深谙电商市场的运营之道&#xff0c;更以…...

【递归、搜索与回溯】递归、搜索与回溯准备+递归主题

递归、搜索与回溯准备递归主题 1.递归2.搜索3.回溯与剪枝4.汉诺塔问题5.合并两个有序链表6.反转链表7.两两交换链表中的节点8.Pow(x, n)-快速幂&#xff08;medium&#xff09; 点赞&#x1f44d;&#x1f44d;收藏&#x1f31f;&#x1f31f;关注&#x1f496;&#x1f496; 你…...

MVC前端怎么写:深入解析与实战指南

MVC前端怎么写&#xff1a;深入解析与实战指南 在Web开发领域&#xff0c;MVC&#xff08;Model-View-Controller&#xff09;是一种广泛使用的架构模式&#xff0c;它将应用程序的数据、界面和控制逻辑分离&#xff0c;使得代码更加清晰、易于维护。本文将详细探讨MVC前端如何…...

LINUX网络设置

一、1.1.ifconfig&#xff1a;当前设备正在启动的网卡&#xff08;启动的&#xff09; ifconfig -a &#xff1a;当前所有设备的网卡&#xff08;启动的和没有启动的都包括&#xff09; 1.2.ifconfig展示的ens33各行含意&#xff1a; 1.2.1 ens33: flags 4163<UP, …...

双指针解题

验证回文数&#xff08;验证回文数-CSDN博客&#xff09;和判断在子序列&#xff08;判断子序列-CSDN博客&#xff09;已经在之前进行了计算&#xff0c;今天有三个新的双指针问题&#xff1a; 两数之和II—输入有序数组 给你一个下标从 1 开始的整数数组 numbers &#xff0…...

【Text2SQL 论文】DIN-SQL:分解任务 + 自我纠正 + in-context 让 LLM 完成 Text2SQL

论文&#xff1a;DIN-SQL: Decomposed In-Context Learning of Text-to-SQL with Self-Correction ⭐⭐⭐⭐ NeurIPS 2023, arXiv:2304.11015 Code: Few-shot-NL2SQL-with-prompting | GitHub 文章目录 一、论文速读1.1 Schema Linking Module1.2 Classification & Decompo…...

基于Springboot+vue实现的汽车服务管理系统

作者主页&#xff1a;Java码库 主营内容&#xff1a;SpringBoot、Vue、SSM、HLMT、Jsp、PHP、Nodejs、Python、爬虫、数据可视化、小程序、安卓app等设计与开发。 收藏点赞不迷路 关注作者有好处 文末获取源码 技术选型 【后端】&#xff1a;Java 【框架】&#xff1a;spring…...

ROS2从入门到精通4-3:全局路径规划插件开发案例(以A*算法为例)

目录 0 专栏介绍1 路径规划插件的意义2 全局规划插件编写模板2.1 构造规划插件类2.2 注册并导出插件2.3 编译与使用插件 3 全局规划插件开发案例(A*算法)常见问题 0 专栏介绍 本专栏旨在通过对ROS2的系统学习&#xff0c;掌握ROS2底层基本分布式原理&#xff0c;并具有机器人建…...

Java学习【认识异常】

Java学习【认识异常】 认识异常异常的种类异常的作用 异常的处理方式JVM默认的处理方式捕获异常finally 多个异常的处理异常中的方法抛出异常 自定义异常 认识异常 在Java中&#xff0c;将程序执行过程中发生的不正常行为称为异常 异常的种类 Error代表的是系统级别的错误&a…...

测试微信模版消息推送

进入“开发接口管理”--“公众平台测试账号”&#xff0c;无需申请公众账号、可在测试账号中体验并测试微信公众平台所有高级接口。 获取access_token: 自定义模版消息&#xff1a; 关注测试号&#xff1a;扫二维码关注测试号。 发送模版消息&#xff1a; import requests da…...

MPNet:旋转机械轻量化故障诊断模型详解python代码复现

目录 一、问题背景与挑战 二、MPNet核心架构 2.1 多分支特征融合模块(MBFM) 2.2 残差注意力金字塔模块(RAPM) 2.2.1 空间金字塔注意力(SPA) 2.2.2 金字塔残差块(PRBlock) 2.3 分类器设计 三、关键技术突破 3.1 多尺度特征融合 3.2 轻量化设计策略 3.3 抗噪声…...

【人工智能】神经网络的优化器optimizer(二):Adagrad自适应学习率优化器

一.自适应梯度算法Adagrad概述 Adagrad&#xff08;Adaptive Gradient Algorithm&#xff09;是一种自适应学习率的优化算法&#xff0c;由Duchi等人在2011年提出。其核心思想是针对不同参数自动调整学习率&#xff0c;适合处理稀疏数据和不同参数梯度差异较大的场景。Adagrad通…...

FFmpeg 低延迟同屏方案

引言 在实时互动需求激增的当下&#xff0c;无论是在线教育中的师生同屏演示、远程办公的屏幕共享协作&#xff0c;还是游戏直播的画面实时传输&#xff0c;低延迟同屏已成为保障用户体验的核心指标。FFmpeg 作为一款功能强大的多媒体框架&#xff0c;凭借其灵活的编解码、数据…...

Golang dig框架与GraphQL的完美结合

将 Go 的 Dig 依赖注入框架与 GraphQL 结合使用&#xff0c;可以显著提升应用程序的可维护性、可测试性以及灵活性。 Dig 是一个强大的依赖注入容器&#xff0c;能够帮助开发者更好地管理复杂的依赖关系&#xff0c;而 GraphQL 则是一种用于 API 的查询语言&#xff0c;能够提…...

ESP32 I2S音频总线学习笔记(四): INMP441采集音频并实时播放

简介 前面两期文章我们介绍了I2S的读取和写入&#xff0c;一个是通过INMP441麦克风模块采集音频&#xff0c;一个是通过PCM5102A模块播放音频&#xff0c;那如果我们将两者结合起来&#xff0c;将麦克风采集到的音频通过PCM5102A播放&#xff0c;是不是就可以做一个扩音器了呢…...

新能源汽车智慧充电桩管理方案:新能源充电桩散热问题及消防安全监管方案

随着新能源汽车的快速普及&#xff0c;充电桩作为核心配套设施&#xff0c;其安全性与可靠性备受关注。然而&#xff0c;在高温、高负荷运行环境下&#xff0c;充电桩的散热问题与消防安全隐患日益凸显&#xff0c;成为制约行业发展的关键瓶颈。 如何通过智慧化管理手段优化散…...

蓝桥杯3498 01串的熵

问题描述 对于一个长度为 23333333的 01 串, 如果其信息熵为 11625907.5798&#xff0c; 且 0 出现次数比 1 少, 那么这个 01 串中 0 出现了多少次? #include<iostream> #include<cmath> using namespace std;int n 23333333;int main() {//枚举 0 出现的次数//因…...

技术栈RabbitMq的介绍和使用

目录 1. 什么是消息队列&#xff1f;2. 消息队列的优点3. RabbitMQ 消息队列概述4. RabbitMQ 安装5. Exchange 四种类型5.1 direct 精准匹配5.2 fanout 广播5.3 topic 正则匹配 6. RabbitMQ 队列模式6.1 简单队列模式6.2 工作队列模式6.3 发布/订阅模式6.4 路由模式6.5 主题模式…...

快刀集(1): 一刀斩断视频片头广告

一刀流&#xff1a;用一个简单脚本&#xff0c;秒杀视频片头广告&#xff0c;还你清爽观影体验。 1. 引子 作为一个爱生活、爱学习、爱收藏高清资源的老码农&#xff0c;平时写代码之余看看电影、补补片&#xff0c;是再正常不过的事。 电影嘛&#xff0c;要沉浸&#xff0c;…...