MATLAB(R和C++)大肠杆菌合成生物机械数学模型

news2024/9/23 17:22:59

🎯要点

🎯合成大肠杆菌生物学网络 | 🎯量化基因型-表型图 | 🎯化学诱导离散浓度下培养细菌评估整个浓度范围内的表达模式 | 🎯定性更改合成模型拓扑结构、定量更改相互作用的强度 | 🎯开发机械数学模型 | 🎯微生物生长和荧光蛋白简化模型纳入常微分方程模型

📜微生物图拓扑用例

📜Python和C++骨髓细胞进化解析数学模型

📜Python成像质谱流式细胞术病理生理学

📜Python药物副作用生物图分析算法和矩阵降维算法

📜C++和R穿刺针吸活检肿瘤算法模型模拟和进化动力学量化差异模型

🍪语言内容分比

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

🍇C++和Python多语言汉明距离

在信息论中,两个等长字符串或向量之间的汉明距离是相应符号不同的位置数。换句话说,它衡量将一个字符串更改为另一个字符串所需的最少替换次数,或者说,将一个字符串转换为另一个字符串的最少错误数。在更一般的上下文中,汉明距离是用于测量两个序列之间编辑距离的几种字符串度量之一。它以美国数学家理查德·汉明的名字命名。主要应用是编码理论,更具体地说是块码,其中等长字符串是有限域上的向量。

应用示例

给定一个包含 N 个元素的数组,创建一个新数组,该数组是给定数组的旋转,并且两个数组之间的汉明距离最大。 任务是打印给定数组和新数组之间的最大汉明距离。

输入:N = 3,arr = {1,4,1}

输出:2

解释:给定数组的可能旋转 = 4 1 1 和 1 1 4。在每种情况下,汉明距离均为 2。因此最大汉明距离将为 2。

输入:N = 4,arr = {2,4,8,0}

输出:4

解释: 在给定数组的可能旋转中,旋转 8 0 2 4 和 0 2 4 8 的最大汉明距离为 4。

简单处理方法是创建另一个大小为原始数组两倍的数组,使得这个新数组(复制数组)的元素只是原始数组中按相同序列重复两次的元素。例如,如果原始数组是 1 4 1,则复制数组是 1 4 1 1 4 1。现在,遍历复制数组并在每次移位(或旋转)时找到汉明距离。因此,我们检查 4 1 1、1 1 4、1 4 1,并选择汉明距离最大的输出。

例如:

给定数组 arr[]={2, 4, 6, 8}。

新数组 brr[]={2, ,4, 6, 8, 2, 4, 6, 8} , count=0

  • 在第一次迭代中: {2, 4, 6, 8} & {2 ,4, 6, 8, 2, 4, 6, 8} ,count=1
  • 在第二次迭代中: {2, 4, 6, 8} & {2 ,4, 6, 8, 2, 4, 6, 8} ,count=2
  • 在第三次迭代中: {2, 4, 6, 8} & {2 ,4, 6, 8, 2, 4, 6, 8} ,count=3
  • 在第四次迭代中: {2, 4, 6, 8} & {2 ,4, 6, 8, 2, 4, 6, 8} ,count=4
  • count = 原始数组的大小,因此输出为 4

我们将创建另一个大小为原始数组两倍的数组,并将元素逐个插入其中,两次。现在我们将对数组执行旋转,并且对于每次旋转,我们将检查原始数组的值是否与新创建的数组匹配。

  • 如果它们不匹配,我们将增加我们的count值
  • 值递增后,我们将执行一个条件来检查最大值,以检查可以获得的最大值。
  • 否则,如果值不匹配,我们不必执行任何操作
  • 在检查循环内,我们还必须检查计数器的值是否=原始数组的大小,因为它是我们可以获得的最大值。如果条件匹配,我们可以返回该值。这个条件优化了我们的代码。
C++ 查找另一个数组,使得汉明与原数组的距离最大
#include <bits/stdc++.h>
using namespace std;

int maxHamming(int arr[], int n)
{

	int brr[2 * n + 1];
	for (int i = 0; i < n; i++) {
		brr[i] = arr[i];
		brr[n + i] = arr[i];
	}

	int maxHam = 0;

	for (int i = 1; i < n; i++) {
		int currHam = 0;
		for (int j = i, k = 0; j < (i + n); j++, k++)
			if (brr[j] != arr[k])
				currHam++;

		if (currHam == n)
			return n;

		maxHam = max(maxHam, currHam);
	}

	return maxHam;
}

int main()
{
	int arr[] = { 2, 4, 6, 8 };
	int n = sizeof(arr) / sizeof(arr[0]);
	cout << maxHamming(arr, n);
	return 0;
}
Python 查找另一个数组,使得汉明与原数组的距离最大
def maxHamming( arr , n ):

	brr = [0] * (2 * n + 1)
	for i in range(n):
		brr[i] = arr[i]
	for i in range(n):
		brr[n+i] = arr[i]

	maxHam = 0

	for i in range(1, n):
		currHam = 0
		k = 0
		for j in range(i, i + n):
			if brr[j] != arr[k]:
				currHam += 1
				k = k + 1

		if currHam == n:
			return n
		
		maxHam = max(maxHam, currHam)
	
	return maxHam

arr = [2, 4, 6, 8]
n = len(arr)
print(maxHamming(arr, n))
C 查找另一个数组,使得汉明与原数组的距离最大
#include <stdio.h>

int max(int num1, int num2)
{
	return (num1 > num2) ? num1 : num2;
}

int maxHamming(int arr[], int n)
{

	int brr[2 * n + 1];
	for (int i = 0; i < n; i++) {
		brr[i] = arr[i];
		brr[n + i] = arr[i];
	}

	int maxHam = 0;

	for (int i = 1; i < n; i++) {
		int currHam = 0;
		for (int j = i, k = 0; j < (i + n); j++, k++)
			if (brr[j] != arr[k])
				currHam++;

		if (currHam == n)
			return n;

		maxHam = max(maxHam, currHam);
	}

	return maxHam;
}

int main()
{
	int arr[] = { 2, 4, 6, 8 };
	int n = sizeof(arr) / sizeof(arr[0]);
	printf("%d\n", maxHamming(arr, n));
	return 0;
}
Javascript 查找另一个数组,使得汉明与原数组的距离最大
<script>
function maxHamming(arr, n)
{
	let brr = new Array(2 *n + 1);
	for (let i = 0; i < n; i++){
		brr[i] = arr[i];
		brr[n+i] = arr[i];
		}
	let maxHam = 0;

	for (let i = 1; i < n; i++)
	{
		let currHam = 0;
		for (let j = i, k=0; j < (i + n); j++,k++)
			if (brr[j] != arr[k])
				currHam++;

		if (currHam == n)
			return n;

		maxHam = max(maxHam, currHam);
	}

	return maxHam;
}

	let arr = [2, 4, 6, 8];
	let n = arr.length;
	document.write(maxHamming(arr, n));

</script>

👉参阅、更新:计算思维 | 亚图跨际

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1993667.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

新增题目同步到ES

文章目录 &#x1f31e; Sun Frame&#xff1a;SpringBoot 的轻量级开发框架&#xff08;个人开源项目推荐&#xff09;&#x1f31f; 亮点功能&#x1f4e6; spring cloud模块概览常用工具 &#x1f517; 更多信息1.创建ES的索引和映射1.创建索引2.创建映射 2.sun-club-infra …

C语言 ——— 学习、使用memmove函数 并模拟实现

目录 memmvoe函数的功能 学习memmove函数​编辑 模拟实现memmove函数 memmvoe函数的功能 memmvoe函数的功能类似于memcpy函数&#xff0c;都是内存拷贝&#xff0c;唯一的区别是memcpy函数不能成功拷贝原数据&#xff0c;而memmvoe函数可以 举例来说&#xff1a; [1, 2, 3…

【Material-UI】Checkbox 组件自定义详解

文章目录 一、Checkbox 组件概述1. 组件介绍2. 基本用法 二、Checkbox 组件的基本自定义1. 更改复选框的颜色2. 调整复选框的大小 三、Checkbox 组件的高级自定义1. 自定义图标2. 自定义复选框的边框和形状 四、使用主题进行全局自定义1. 定义全局主题2. 动态主题切换 五、总结…

springboot整合springmvc使用外置的Servlet容器

目录 1. 创建2. 配置3. 配置Tomcat4. 心得 1. 创建 2. 配置 首先创建两个文件夹 配置&#xff1a; 3. 配置Tomcat 右上角的按钮 添加 保证这几个不冲突&#xff0c;保证你的tomcat的文件没问题&#xff01;&#xff01;&#xff01; 点击部署 选择第二个war exploded…

零基础5分钟上手谷歌云GCP核心云开发技能 - 搭建和维护高可用数据库集群

简介&#xff1a; 欢迎来到小李哥全新谷歌云GCP云计算知识学习系列&#xff0c;适用于任何无云计算或者谷歌云技术背景的开发者&#xff0c;让大家零基础5分钟通过这篇文章就能完全学会谷歌云一个经典的服务开发架构方案。 我将每天介绍一个基于全球三大云计算平台&#xff0…

GPT解逻辑数学题之8个8变1000的故事

目录 初试正解 我&#xff1a; GPT4&#xff1a; 再问思索 我&#xff1a; GPT4&#xff1a; 提醒错误 我&#xff1a; GPT4&#xff1a; 给出正解提示 我&#xff1a; GPT4&#xff1a; 不愿放弃 我&#xff1a; GPT4&#xff1a; 再次尝试 我&#xff1a; …

Web开发:web服务器-Nginx的基础介绍(含AI文稿)

目录 一、Nginx的功能&#xff1a; 二、正向代理和反向代理的区别 三、Nginx负载均衡的主要功能 四、nginx安装目录下的各个文件&#xff08;夹&#xff09;的作用&#xff1a; 五、常用命令 一、Nginx的功能&#xff1a; 1.反向代理&#xff1a;例如我有三台服务器&#x…

Linux源码阅读笔记20-PCI设备驱动详解

PCI基础 PCI总线为高性能局部总线&#xff0c;主要解决外部设备之间以及外部设备与主机之间高速数据传输。在数字图形、图像等处理&#xff0c;以及告诉实时数据采集与处理等队数据传输速率要求高的应用中&#xff0c;采用PCI总线进行数据传输。PCI规范能够实现32位并行数据传…

我在高职教STM32——I2C通信入门(3)

大家好,我是老耿,高职青椒一枚,一直从事单片机、嵌入式、物联网等课程的教学。对于高职的学生层次,同行应该都懂的,老师在课堂上教学几乎是没什么成就感的。正是如此,才有了借助CSDN平台寻求认同感和成就感的想法。在这里,我准备陆续把自己花了很多心思设计的教学课件分…

STM32G070KBT6的RTC HAL库使用

*配置问题 首先使能时钟源&#xff0c;这里在时钟配置中选择LSI&#xff0c;为什么后面会说&#xff0c;然后使能Calender结构体&#xff0c;保证可以对RTC的年月日时分秒等进行写入和读取&#xff1b;alarmA和alarmB是闹钟&#xff0c;这里不用就Disable&#xff1b; Tam…

突破•指针六

听说这是目录哦 数组和指针笔试题解析&#x1fae7;一维数组1&#x1f355;&#x1f355;&#x1f355;&#x1f355;&#x1f355;&#x1f355;&#x1f355; 字符数组1&#x1f354;&#x1f354;&#x1f354;&#x1f354;&#x1f354;&#x1f354;&#x1f354;2&#…

高并发下的分布式缓存 | Read-Through缓存模式

缓存系列文章链接如下&#xff1a; 高并发下的分布式缓存 | 缓存系统稳定性设计 高并发下的分布式缓存 | 设计和实现LRU缓存 高并发下的分布式缓存 | 设计和实现LFU缓存 高并发下的分布式缓存 | Cache-Aside缓存模式 Read-Through 模式的缓存操作 Read-Through模式的一个关键…

Scanner类、String类和StringBuffer类的相关使用

一、Scanner: 主要用于键盘录入的 构造方法&#xff1a; Scanner(InputStream source) 构造一个新的 Scanner &#xff0c;产生从指定输入流扫描的值。 1、next()和nextLine()区别&#xff1a; String line sc.next(); // 不会接收特殊字符&#xff0c;比如空格回…

高效的编程学习方法和技巧

编程小白如何成为大神&#xff1f;大学新生的最佳入门攻略 编程已成为当代大学生的必备技能&#xff0c;但面对众多编程语言和学习资源&#xff0c;新生们常常感到迷茫。如何选择适合自己的编程语言&#xff1f;如何制定有效的学习计划&#xff1f;如何避免常见的学习陷阱&…

基于单片机的智能空气净化系统

【摘 要】 设计了一种基于单片机的智能空气净化系统。通过传感器实时采集空气中 PM2.5 、甲醛等有害健康物质的浓度&#xff0c;将各项数据显示到液晶显示屏&#xff0c;当浓度超过设置的警戒值时&#xff0c;控制蜂鸣器发出警报。根据浓度大小控制空气净化器电机转速&#xf…

04.C++类和对象(中)

1.类的默认成员函数 默认成员函数就是用户没有显式实现&#xff0c;编译器会自动生成的成员函数称为默认成员函数。一个类&#xff0c;我们不写的情况下编译器会默认生成以下6个默认成员函数&#xff0c;需要注意的是这6个中最重要的是前4个&#xff0c;最后两个取地址重载不重…

Selenium + Python 自动化测试04(操作方法1)

上一篇我们讲述了webdriver 元素定位方法。我们对如何定位元素有了一个基本的认识。接着我们详细讲述对元素常见的一些基本操作方法&#xff0c;以便我们可以做很多功能操作的测试。这一篇侧重最基本的操作方面。 1、send_keys 方法 此方法类似于模拟键盘输入。还是以下面网站…

React项目中引用视频播出插件 easyPlayer.js 部署趟坑日志

目录 前文记录背景问题摸排&#xff1a;第一天前端打包失败&#xff1f;远程打包逻辑与本地打包逻辑不一致&#xff1f;远程入口页被篡改&#xff1f;再次排查本地webpack打包逻辑 问题摸排&#xff1a;第二天确认本地与远程打包一致排查远程nginx代理定位问题 index.html 的所…

AI10-PaddleDetection2.7安装测试

1、下载PaddleDetect-release-2.7开源项目 https://github.com/PaddlePaddle/PaddleDetection https://github.com/PaddlePaddle/PaddleDetection/releases PaddleDetection: PaddleDetection的目的是为工业界和学术界提供丰富、易用的目标检测模型 2、安装 环境要求 * Paddl…

[Qt][QWidget]详细讲解

目录 1.概述2.QWidget核心属性1.简介2.核心属性概览 3.QWidget常用属性1.enabled2.geometry1.是什么&#xff1f;2.Window Frame的影响3.相关API4.注意 3.windowTitile4.windowIcon5.windowOpacity6.cursor8.font9.toolTip10.focusPolicy11.styleSheet 1.概述 Widget是Qt中的核…